[Bf-committers] HOWTO transplant development branches coming from git-svn to git.blender.org
Julien RIVAUD (_FrnchFrgg_)
frnchfrgg at free.fr
Sun Nov 17 19:36:37 CET 2013
Hi everyone,
I'd like to give you notice of a somewhat advanced git HOWTO for people
that used previout git mirrors of blender (as the mirror by jesterKing).
The HOWTO is here:
http://wiki.blender.org/index.php/User:Frnchfrgg/Transplant
This HOWTO aims to salvage developement branches made with SVN mirrors,
that are impossible to rebase. The HOWTO is long and you'll need some
git knowledge, but you'll be well guided throughout.
A lot of the cleaning part directly comes from the experience I gained
working on the git.blender.org conversion.
To know if this is for you, check the following:
* MANDATORY Did you use to develop for Blender in a Git repository
either cloned from jesterking's SVN mirror or directly from git-svn ?
(other SVN mirrorring solutions might also be handled with
modifications, but not manual periodic dumps of SVN)
and any of:
* Is the branch that much intertwinned with trunk from git-svn (several
merges with conflict resolutions) that rebasing is too painful ? (Note
that while rebasing you'd have to know how to use the -Xsubtree=blender
option, unless your SVN clone doesn't have the leading blender/ directory)
* Did you commit to files with CR-LF line endings so that conflicts
happen all the time with git.blender.org while rebasing and the
-Xrenormalize rebase option doesn't help ?
* Do you want to try a wicked smart way to transplant history ?
I'm hoping this will be of good use for some of you, and am mostly
available to help on #blendercoders.
Cheers,
_FrnchFrgg_
P.S.: I devised that method to fix the multiview branch of dfelinto that
was seriously entangled with Nathan's mirror and had ~400 commits to
salvage including merges from trunk, so rebasing was nigh impossible and
cherry-picking by hand (resolving all conflicts anew) was a nightmare.
Of course you can always use the conversion as a base to rework your
branch into a set of clean, sorted, progressive and reviewable commits.
More information about the Bf-committers
mailing list