Re: GIT + CVS workflow query.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



"Eoin Hennessy" <eoin.hennessy@xxxxxxxxx> writes:

> I'd like to use GIT to track changes in a CVS repository. As well as
> tracking changes, I will also need to push patches back to CVS from
> GIT. My workflow is currently as follows:
>
> - Use git-cvsimport to import and update a mirror of the CVS
>    repository; 'project.git'.
> - Pull changes from the mirror to a cloned working copy; 'project'.
> - Fix bugs in the working copy and push commits back to the mirror.

Fix bugs, yes, but push back to the mirror is probably not what
you want.

> - Use git-cherry to identify commits in master not currently in the
>   branch updated by git-cvsimport. Then use git-cvsexportcommit to push
>   these commits into a CVS checkout.

What I do with my day-job project is that I keep a separate CVS
checkout like you do, and

 - cvsimport keeps track of the "project.git" mirror as you do;
 - pull changes from that to my "project" as you do (but see below);
 - fix things in "project", as you do;
 - identify the needed changes with 'git-cherry' as you do;
 - exportcommit to push them back to CVS through the CVS checkout;
 
Then the next cvsimport will get my changes (among other
people's changes) to "project.git".  

 - fetch changes from the "project.git" to my "project";
 - 'git-rebase' my changes on top of the tip of "project.git";

This will remove the duplicates that I had but now are in CVS.




-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux