This is way off topic, but I'll try. I'm trying to understand CVS. I've got the repository setup on the same machine I'm developing on so it's ready to go. I'm the only developer on this project, so I'm just using CVS for my own version control and too keep track of the state the software was in when it was installed on other machines. I have read 'info cvs', yet, but it hasn't soaked in yet, I'm afraid. Too much fun in my youth, perhaps. I'm really more curious how people use it day-to-day while developing, and then the process used to update some "live" site. Say I've got a CGI application that I'm working on with the following directory structure. ~/project_one/ cgi-bin <-- want under cvs control template <-- cvs, too config <-- cvs, too data <-- Don't want under CVS Here are my questions: 1) How do I put this project under CVS control? I don't want the data directory placed in CVS, which is very large. 2) and I'm unclear how to group all those directories as a single project under CVS. That is, how do I checkout a file from ~/project_one/cgi-bin and not from ~/project_two/cgi-bin. Yet, I don't want to have to checkout/checkin the entire project each time I make an update. 3) What is the checkout and checkin procedure? - Can I checkout just the cgi-bin directory? - Can I checkout just one file in one directory? 4) I have a "live" site running this project on a remote machine. On the remote machine I have two copies of the files: one for testing, and another for the "live" files. Is CVS a good way to move files from the repository to the live machine? Is this also a "checkout" or is there another way to move files? 4a) And, is there a way to do a remote checkout over SSH? Finally, I'd be curious on the general way people use CVS when developing. How often you checkin and such. Thanks, Bill Moseley mailto:moseley@hank.org -- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/Support/Doku/FAQ/
From: Bill Moseley [mailto:moseley@hank.org]
Hi,
This is way off topic, but I'll try.
It is a bit, we should take this off the list.
I'm trying to understand CVS. I've got the repository setup on the same machine I'm developing on so it's ready to go. I'm the only developer on this project, so I'm just using CVS for my own version control
Same situation as me. I am reasonably new to CVS, but I have it working satisfactorily for me so far..
Say I've got a CGI application that I'm working on with the following directory structure.
~/project_one/ cgi-bin <-- want under cvs control template <-- cvs, too config <-- cvs, too data <-- Don't want under CVS
A few small differences with me but still should apply to you. I use the WinCVS client as I develop mainly multi tier database applications with 'Windows GUI Clients' on Windows (until Delphi for Linux is released), CORBA middleware developed on windows, but deployed on Linux, and Linux for the database server, but I have a local windows database for development when not on the network My 'windows' directory structure is similar to -MyProject --ClientApplication ---DLL1 ---DLL2 --Middleware ---CORBAObject1 ---CORBAObject2 --DataBase ---Metadata ---Binarys
1) How do I put this project under CVS control? I don't want the data directory placed in CVS, which is very large.
I usually set up a repository for each project. I then decide how I want to split my project up, and create a module for each 'part'. In the above example I have three modules one called 'ClientApplication' and one called 'Middleware' and one called 'Database' (I only store the database Metadata under CVS, the binary files are ignored (.cvsignore)).
2) and I'm unclear how to group all those directories as a single project under CVS. That is, how do I checkout a file from ~/project_one/cgi-bin and not from ~/project_two/cgi-bin. Yet, I don't want to have to checkout/checkin the entire project each time I make an update.
By use modules as explained above, you can split you app into manageable parts.
3) What is the checkout and checkin procedure? - Can I checkout just the cgi-bin directory? - Can I checkout just one file in one directory?
Once you have imported you modules to CVS, you then check them out to a 'working directory'. Once the module is checked out, you can then do you work on the working copy, when you are happy, you update the main CVS repository.
4) I have a "live" site running this project on a remote machine. On the remote machine I have two copies of the files: one for testing, and another for the "live" files. Is CVS a good way to move files from the repository to the live machine? Is this also a "checkout" or is there another way to move files?
If you check out a module with the -export parameter it just checks out the source files and not the cvs aux files. This checkout is normally used to compile 'release' candidates. You could do an -export checkout from you live machine.
4a) And, is there a way to do a remote checkout over SSH?
Yes it is explained in the manual and the excellent 'free book' (www.kfogel@red-bean.com) Cheers Phil -- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/Support/Doku/FAQ/
From: Bill Moseley [mailto:moseley@hank.org]
Hi,
This is way off topic, but I'll try.
It is a bit, we should take this off the list.
I'm trying to understand CVS. I've got the repository setup on the same machine I'm developing on so it's ready to go. I'm the only developer on this project, so I'm just using CVS for my own version control
Same situation as me. I am reasonably new to CVS, but I have it working satisfactorily for me so far..
Say I've got a CGI application that I'm working on with the following directory structure.
~/project_one/ cgi-bin <-- want under cvs control template <-- cvs, too config <-- cvs, too data <-- Don't want under CVS
A few small differences with me but still should apply to you. I use the WinCVS client as I develop mainly multi tier database applications with 'Windows GUI Clients' on Windows (until Delphi for Linux is released), CORBA middleware developed on windows, but deployed on Linux, and Linux for the database server, but I have a local windows database for development when not on the network My 'windows' directory structure is similar to -MyProject --ClientApplication ---DLL1 ---DLL2 --Middleware ---CORBAObject1 ---CORBAObject2 --DataBase ---Metadata ---Binarys
1) How do I put this project under CVS control? I don't want the data directory placed in CVS, which is very large.
I usually set up a repository for each project. I then decide how I want to split my project up, and create a module for each 'part'. In the above example I have three modules one called 'ClientApplication' and one called 'Middleware' and one called 'Database' (I only store the database Metadata under CVS, the binary files are ignored (.cvsignore)).
2) and I'm unclear how to group all those directories as a single project under CVS. That is, how do I checkout a file from ~/project_one/cgi-bin and not from ~/project_two/cgi-bin. Yet, I don't want to have to checkout/checkin the entire project each time I make an update.
By use modules as explained above, you can split you app into manageable parts.
3) What is the checkout and checkin procedure? - Can I checkout just the cgi-bin directory? - Can I checkout just one file in one directory?
Once you have imported you modules to CVS, you then check them out to a 'working directory'. Once the module is checked out, you can then do you work on the working copy, when you are happy, you update the main CVS repository.
4) I have a "live" site running this project on a remote machine. On the remote machine I have two copies of the files: one for testing, and another for the "live" files. Is CVS a good way to move files from the repository to the live machine? Is this also a "checkout" or is there another way to move files?
If you check out a module with the -export parameter it just checks out the source files and not the cvs aux files. This checkout is normally used to compile 'release' candidates. You could do an -export checkout from you live machine.
4a) And, is there a way to do a remote checkout over SSH?
Yes it is explained in the manual and the excellent 'free book' (www.kfogel@red-bean.com) Cheers Phil -- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/Support/Doku/FAQ/
participants (2)
-
moseley@hank.org
-
phil@shrimpton.co.uk