Wednesday, November 01, 2006
Using CVS
For my daily development projects we are using cvs as a revision control system. I have found InnerLoop to be of great help in this area. As I mentioned in the last post I'm normally working in many different networks and user accounts. With cvs I can checkout the code anywhere using the remote access features and check it back in from anywhere. For me it's a simple as setting the environment variable CVSROOT to the path with the repository and then I set CVS_RSH to ssh and that's it.
No matter where I am I can fire up InnerLoop and do Tools -> Version Control -> Setup and select CVS. There is nothing else to setup.
I found the best way is to work with the cvs repository is to do Tools -> Version Control -> Compare with CVS...
This command allows me to specify a directory with my sandbox. I can select any part of the sandbox or all of it and check the recursive box if I want to descend the tree. InnerLoop will think a bit then display all of the differences between my sandbox and the repository. I can see files I modified, files that somebody else checked in and are newer in the repository, I can see files added that are not in my sandbox, etc. This is a nice graphical view. I used to fish around by doing:
% cvs -n update > t
and then look in t and see what has changed. I also always had to remember to do -d to get new directories, but with InnerLoop it figures all this out automatically.
The nice think is now I can browse the tree in InnerLoop and easily look at the diffs using DIFFzilla, a powerful difference engine, look at the history, and commit and update files. The history view is useful when there are branched involved. The graphical picture is much easier to see than the command line cvs commands.
The key to using cvs over ssh it to make sure the remote machine does not need to ask for your password. I found that InnerLoop will choke if the ssh session requires a password. I have no idea where a password can be entered. They key is to get no password ssh working before you start with InnerLoop and cvs. A simple google search for "ssh no password" will find the needed info to setup both ends so ssh will not ask for a password.
After getting used to InnerLoop for cvs it's hard to remember when I did it all by command line (including the diffs). I guess things were always more difficult in the old days.
For my daily development projects we are using cvs as a revision control system. I have found InnerLoop to be of great help in this area. As I mentioned in the last post I'm normally working in many different networks and user accounts. With cvs I can checkout the code anywhere using the remote access features and check it back in from anywhere. For me it's a simple as setting the environment variable CVSROOT to the path with the repository and then I set CVS_RSH to ssh and that's it.
No matter where I am I can fire up InnerLoop and do Tools -> Version Control -> Setup and select CVS. There is nothing else to setup.
I found the best way is to work with the cvs repository is to do Tools -> Version Control -> Compare with CVS...
This command allows me to specify a directory with my sandbox. I can select any part of the sandbox or all of it and check the recursive box if I want to descend the tree. InnerLoop will think a bit then display all of the differences between my sandbox and the repository. I can see files I modified, files that somebody else checked in and are newer in the repository, I can see files added that are not in my sandbox, etc. This is a nice graphical view. I used to fish around by doing:
% cvs -n update > t
and then look in t and see what has changed. I also always had to remember to do -d to get new directories, but with InnerLoop it figures all this out automatically.
The nice think is now I can browse the tree in InnerLoop and easily look at the diffs using DIFFzilla, a powerful difference engine, look at the history, and commit and update files. The history view is useful when there are branched involved. The graphical picture is much easier to see than the command line cvs commands.
The key to using cvs over ssh it to make sure the remote machine does not need to ask for your password. I found that InnerLoop will choke if the ssh session requires a password. I have no idea where a password can be entered. They key is to get no password ssh working before you start with InnerLoop and cvs. A simple google search for "ssh no password" will find the needed info to setup both ends so ssh will not ask for a password.
After getting used to InnerLoop for cvs it's hard to remember when I did it all by command line (including the diffs). I guess things were always more difficult in the old days.
