Am 2012-10-10 01:10, schrieb Damien Robert:
if I have understood your problem correctly, it looks like the git subtree
script could help you a lot.
Unfortunately, the above proposition will only help you track vendor
branches after you have done the conversion, but not in the conversion
itself. For that it looks like you'll have to use graft (personally I would
use git filter-branch to rewrite the commits), and I don't know how easily
scriptable this will be.
Yes, when I started familiarizing with Git, subtrees looked like the proper and natural
solution to the problem.
In fact, if I could start with an empty repository, from scratch, I'd most likely use
subtrees for what used to be vendor branches in Subversion.
However, having to convert an existing repository from Subversion, where I ultimatively
need grafting to reproduce the proper branching structure, the conversion reduces to the
"Can I combine grafting with the subtree merging strategy?"
That is, when I write the .git/info/grafts file, can I have some of the merges be done
with the subtree strategy?
The beauty of the approach described in the blog post mentioned in my previous post is
that although a bit unusual, it is also very generic, and so it avoids all the
subtleties both of submodules and subtrees. (It even works with Mercurial, if a
conversion was ever required or desired. ;-) )
If I know how to make grafting use the subtree strategy, I'd use subtree's though, so
I'd be very happy to learn if this is possible.
Cafu - the open-source Game and Graphics Engine
for multiplayer, cross-platform, real-time 3D Action
Learn more at http://www.cafu.de
You received this message because you are subscribed to the Google Groups "Git for
human beings" group.
To post to this group, send email to email@example.com.
To unsubscribe from this group, send email to
For more options, visit this group at