Web Hosting Talk







View Full Version : Question on CVS


stephenn
08-28-2002, 09:52 AM
Hi,

Does any one installed CVS. is it good source control system.
Can we easily manage our web developers thorough this.

so when one developer chekout one of the source file, other cant check out right.


i am newbie just let me know any input.


thanks

ffeingol
08-28-2002, 10:11 AM
Nope, that is not the way CVS works. CVS does not lock the file and prevent others from checking it out. The "C" in CVS is concurrent, which sounds like the opposite of what you want.

If you want locking, you should check out SCCS or RCS.

Frank

stephenn
08-28-2002, 10:46 AM
Well I have looked at the doc and it says that souce control
management.

if you dont mind, then how does it work. So managinng the software for your own purpose.


thanks

ffeingol
08-28-2002, 10:59 AM
CVS is source control (very good source control). But it has a different set of working principles that most.

In a traditional source control, the file is locked as long as someone has it checked out. When you check it back in the lock is released. That is how RCS and SCCS work.

CVS is based on the concept of multiple concurrent developers. You don't put a lock on files when you check them out, because typically you have a copy of everything, not just a single file. When you check the file back in CVS attempts to merge your changes in. If it cannot (because others have check it back in since you have) it will let you know that it cannot check it back in and you need to manually reslove the issues.

Manually resolve the issues means that you have to look at your changes and the currently added changes and manually merge them. This would normally only happen if two different people were chaning the exact same line in the exact same file.

Frank

Ahmad
08-28-2002, 11:11 AM
Not only that, but also ..

If you have a file, developer A checks it out and developer B checks it out. Then both do modifications. Then B sends his modifications before A, if the modifications of A and B are in two different parts of the file, CVS will automatically merge the two.

Only when the modifications collide then CVS will send the file back to A with the lines in question specifically marked, so developer A has to go to where the collision occured and what ever is needed to resolve it then sends it back to the repository with no problems.

brands
08-28-2002, 11:12 AM
I am also looking at online development management, using CVS.

When a person checks out some files, does CVS indicate the other developers that the files have been now worked on..??

Also, I'd like to know, if CVS is as powerful as the one avaliable at collabnet/sourcecast...althought, i don't want to integrate customers and biz partners, its just my developers and me...!??

Thanks for the input !

Ahmad
08-28-2002, 11:47 AM
AFAIK, CVS doesn't care who checked the files out. So it doesn't keep track of such a thing. CVS only cares about changes to the files. You can check the whole source tree from CVS and keep it for days. It doesn't mean that you are working on all the files.

It was designed by open source developers for open source developers. Anybody can come at any time and check everything out, try it, maybe make some changes and put them back to the repository.

Most of the changes your developers will be commiting will be bug fixes. So you don't want to bother your developers just because they want to submit a small change like an error check or an extra function call.

CVS is only for log keeping. Any other communications are done using mailing lists, forums, bug tracking system, .. etc.

ffeingol
08-28-2002, 11:48 AM
Originally posted by brands
When a person checks out some files, does CVS indicate the other developers that the files have been now worked on..??


No.

Again, you do not typically check out a file, you check out an entire application. There are then commands within CVS to update your local copy with the files in the CVS repository (merging in any changes needed and deleting any obsolete files) and to check your updates back into the repository.

Frank

stephenn
08-28-2002, 12:08 PM
This is really good information.

From my understanding, Don need to wrry about when you check out the application NOT A FILE.

Only when we merege, if there is any confilict then we should
manually fix.

or is any tools there to check autamatically. I mean not diff or anything. Som tools from CVS.

Other thing is Does Cliens has to be SSH/telnet to the server
and work or from Windows can they develop and merge. is
Any client that run on windows?

Thansk for all the info.

thansk

brands
08-28-2002, 12:21 PM
stephenn : there are more than a couple of windows clients for CVS. Popular ones are WinCVs and Tortoise CVS, I have used Tortoise CVS a couple of times.

here is linkt o Google dir for a list of clients :

CVS Clients (http://directory.google.com/Top/Computers/Software/Configuration_Management/Tools/Concurrent_Versions_System/Clients/?tc=1)

ffeingol : To what extent can the admin control the developers...like in terms of permissions and accessibility.

Thanks again

ffeingol
08-28-2002, 12:27 PM
Originally posted by brands
To what extent can the admin control the developers...like in terms of permissions and accessibility.


Typically total control. First of all, you can decide if you want to have anonymous access to the CVS repository. This means that you can get a copy of what's been put in. This is almost always given for Open Source projects, but it's up to you.

To check it, you typically need a user id and password. On the servers I've worked on this is done over a SSH connection.

Again, it will totally depend on if you are doing this on a private network or over the public internet.

Just do a google search on pserver. pserver is the server end of CVS. It's responsible for letting you get copies of the file and checking them back in.

Frank

cperciva
08-28-2002, 04:18 PM
Recent versions of cvs allow people to mark in the repository that they have files checked out; but I don't know if anyone actually uses that.

shann
08-28-2002, 11:19 PM
Does PSERVER is comes with CVS package or do we have
to install.

How does it work

any help appreciated

thanks
shan