CVS question

Posted on 2004-10-18
Last Modified: 2013-12-14
if two people are using a block within a module but in different projects, how should that
be handled in cvs?

would it be correct to commit that one block as a project, and then the two people can check it in and out as necessary?
Question by:danlarkin
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
LVL 21

Expert Comment

ID: 12337141
They should commit and syncronize daily.  This minimizes the chances that any changes they make would distrupt the other programmer.  These should be the rules:
  1) Only commit code that compiles. If the code doesn't comple yet, either comment it out or commit tomorrow morning
  2) Enter cvs checkin comments whenever possible (I try to enter comments always)
  3) Unit Test the code.  Look in to JUNIT( for Java projects (There are unit test frameworks with simalar API's for other languages as well.  Google C++ Junit.)
  4) COMMUNICATE.  Each programmer should know what the other is doing.  (CVS stands for CONCURRENT Versioning System)  If it is a big project, have daily 5-minute status meetings where each programmer JUST describes how his sub-project is going.
  5) Syncronize BEFORE commiting.  It is the programmer that checks in LAST who is responsible for resolving conficts if two people edit the same line.

Author Comment

ID: 12340174
ok that sounds ok... but as regards the "mechanics" of the cvs...should the common block (which i presume will be a separate project from the two developers perspective) be checked in under each developers project?? Is this "double" version control the best way forward or is there a neater solution
LVL 21

Accepted Solution

MogalManic earned 50 total points
ID: 12344197
Yes, I would set up 3 projects:

     Common Libraries:
          /            \
   Project A       Project B

The common library builds a JAR (or LIB if C/C++) as its results.
Project A and Probject B include the common library.

I would also recommend using a build tool such as ANT.
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Author Comment

ID: 12346178
ok this makes alot more sense.

I had initally thought i should have the following type structure....

Project A                Project B                    Common Library
         |                        |                                  
common library       common library              

thus my concern about a cvs project inside a cvs project......

So my only concern then is if someone checks out a projectA or projectB they also must *somehow* know to checkout the common library - is this situation  alright?

(I'm using c++, makefiles, and cvs)
LVL 21

Expert Comment

ID: 12346302
You could also just create a LIB project.

The common library project will build its results to the LIB project.

That way, if a user checks out Project A (he would also need to include the LIB project as well), he would NOT need to check out the source for common libraries unless he wants to.

Author Comment

ID: 12355358
aha of course - ok thanks very much for the help

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Angular JS Route 3 102
Math Equation 23 128
backup program with robocopy 6 74
Eclipse with various Java releases 7 51
Whether you’re a college noob or a soon-to-be pro, these tips are sure to help you in your journey to becoming a programming ninja and stand out from the crowd.
In this post we will learn different types of Android Layout and some basics of an Android App.
In this fourth video of the Xpdf series, we discuss and demonstrate the PDFinfo utility, which retrieves the contents of a PDF's Info Dictionary, as well as some other information, including the page count. We show how to isolate the page count in a…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question