Re: Syncing with CVS
- From
Boaz Harrosh <bharrosh@panasas.com>
- Date
- Jan 19, 2009, 10:58 UTC
- Message-ID
- <49745CE4.1000309@panasas.com>
- In-Reply-To
- <f31e50960901190139w65b69fd1k752973a23c40f384@mail.gmail.com>
Christian von Kietzell wrote:
Show 17 quoted lines
> Hi, > > I have a project I started in git. After a while I exported that to > CVS via git cvsexportcommit which worked quite nicely. Now, a > colleague made changes to the project - in CVS. What's the best way to > get those back into my git repository so that I'll be able to sync > back and forth between git and CVS? I had a quick look at the wiki but > couldn't find anything appropriate. > > I know of git cvsimport, of course, but that doesn't work on my > original repository. Or does it? I didn't find anything on how to > limit what to import. After all, some of the commits are already in my > repository (the ones I exported). > > Hope any of you can help. Thanks in advance. > > Chris
I would "git cvsimport" into temporary new git. Then "git remote add cvs_import that_temp_git" into the main git Then find the point of the common base, do "git tag CVS_GIT_BASE that_base_commit_uid" "git checkout -b cvs_import cvs_import/master" "git rebase --onto master CVS_GIT_BASE"
So in fact I'm just cherry-picking the additions from CVS and reapplying on to original git tree. If you want it more automatic you'll need to do the above in a script with some kind of naming conventions for your git tags and CVS's tags at points of sync.
Boaz