I have several projects on my development system - some projects are open source, and (herein lies the 'problem'), use their own revision control system (RCS).
At last count, the different RCSs on my development machine are:
- CVS
- SVN
- mercurial
- git
- ...
Its difficult enough, trying to remember and master the commands for a single system - so I am considering 'ditching' them all and settling for one - well not quite ditching them all, I'll explain further.
Ideally, I would like to:
have ONE system which I use for everything - i.e. checking in my code changes and running diffs against previous versions stored in MY repository. I call this my MASTER RCS
still be able to update the code in a specific project - using whatever revision control system its authors are using (mercurial, git or whatever), after I have resolved any conflicts etc and made sure that the updated code builds, then I want to check the updated code into my MASTER RCS. This will of course mean that I will need to keep around the different RCS which I will call the SLAVE RCS.
In terms of backing up stuff, its only the data stored in the MASTER RCS that I will back up.
Now for my question:
Is the scheme I propose possibly? (I can't see why not) - but there may be gotchas that I may not be aware of - I will appreciate any tips on what to be aware of and what to avoid.
BTW, I am thinking of using SVN as the MASTER RCS. If you can think of reasons of not using SVN (i.e. choosing another MASTER RCS) I'd be interested in hearing your reasons.