git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* cherry picking changesets instead of commits
@ 2008-05-28 18:06 Geoffrey Irving
  2008-05-28 18:19 ` Junio C Hamano
  0 siblings, 1 reply; 13+ messages in thread
From: Geoffrey Irving @ 2008-05-28 18:06 UTC (permalink / raw)
  To: git

I have a project stored in a git repository with other versions stored
in both cvs and perforce (sadly).  I want the ability to propagate
changes back and forth between all three repositories without mangling
the git history.  I specifically want to avoid (1) having two copies
of each commit (e.g., an initial version and a version pulled from
cvsimport) and (2) commits full of git-p4 metadata (the [git-p4] lines
in commit messages).

One way to do this would be to have cvs branch imported using "git
cvsimport", and a perforce branch imported via "git-p4", and
communicate between the cvs/p4 branches and the main git branches
entirely through cherry picking.  Unfortunately, "git cherry" doesn't
recognize when commits with potentially different author names or log
messages polluted with "[git-p4]" produce the same changeset, so if I
export a change from the git master branch through cvsexportcommit and
update the cvs branch with cvsimport, "git cherry" will report that
the change doesn't exist on the git master branch.

Has anyone tackled this problem before?  Would it be straightforward
to add an option to "git cherry" to ignore differences in metadata?
The cherry documentation doesn't give its criteria for when commits
match, and I'm not familiar enough with the code yet to figure out
those criteria directly from cmd_cherry in builtin-log.c.

Thanks,
Geoffrey

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2008-05-29  0:13 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-28 18:06 cherry picking changesets instead of commits Geoffrey Irving
2008-05-28 18:19 ` Junio C Hamano
2008-05-28 18:28   ` Geoffrey Irving
2008-05-28 18:46     ` Junio C Hamano
2008-05-28 19:42       ` Geoffrey Irving
2008-05-28 20:46         ` Junio C Hamano
2008-05-28 21:14           ` Geoffrey Irving
2008-05-28 22:38             ` Jeff King
2008-05-28 22:48               ` Jeff King
2008-05-28 23:56                 ` Junio C Hamano
2008-05-29  0:12                   ` Jeff King
2008-05-29  0:04             ` [PATCH] Documentation: git-cherry uses git-patch-id Junio C Hamano
2008-05-29  0:07               ` Geoffrey Irving

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).