This is more for me than you, however if you need Git on Ubuntu 10.04 (LTS) try this. The commands I ran get the pre-packaged PPA Git working on Ubuntu 10.04:
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:git-core/ppa
sudo aptitude update
sudo aptitude safe-upgrade
sudo aptitude install git
Here is a quick way to show the current git branch when you are in a repository directory. Place this in your .bashrc or .bash_profile:
I’ve also customised the PS1 to show user/host/path.
You should probably setup git bash completion as well. This can be done by sourcing the bash completion script that is available in the git source code as shown (change path to where you place script):
I’m coming to appreciate IBM’s Rational Clearcase, aside from the price point of course. But work have a license for it, and I have to use it. Don’t get me wrong, CVS is fantastic for tracking your small projects or larger ones with average complexity. I still use CVS for my own code, BUT clearcase has these features built in that you just start to take for granted. Here is a list of the ones I think make it a cut above CVS on a time intensive and complex project:
- Editing commit comments from the GUI or cmd line
- Triggers – including haveing pre and post operation triggers – some of mine are in perl!
- Labels vs CVS tags
- Element based branching based upon a view configspec
- Clear Merge Manager – This one is a lifesaver!
- renaming elements, specifically directories from GUI or cmd line
You can see from my short list that there are some things there that are powerful and make life very easy in a multi stream multi branch project management environment.
A case in point: I spent the last 3 hours baselining our Development, and testing branches – being 3 branches. We have started a new release cycle after our product has gone live in production, but there are still release fixes and defects being resolved that will get applied to production at a later date (2nd drop).
By baselining and labelling my code in these branches, I can easily track code changes across both the new development cycles and the concurrent release fixes.
On the whole, after half a year using Rational Clearcase, I can say the experience – despite the initial VERY LARGE learning curve – has been positive.
Next entries »
I think I may have stumbled upon the answer. I’m so set in my CVS ways that I though the best thing was to branch the entire top level folder – recursively. What I really was after was a way of setting the configspec on the NEW view I create for the new branch, and making it show code that is labeled with a particcular label, then when it is checked out and in, a new revision exists on the new branch. The advantage here, is that my new view shows exactly what I need without the need for checking out a version of every file in that view.
This post over at the IBM Rational Clearcase forums describes EXACTLY what I was after, and explained it in the precise terms I needed. I’m thinking differently now, and if it works as I intend, then I shall write further about this adventure into SCM.