On May 16, 2008, at 11:50 AM, Nigel Magnay wrote:
Ok - it's Friday and I've got to interact with svn again..
I'm using git-svn, and I've not followed the guidance. Development has
gone on in git branches and merges - but now I need to commit the
changes back into svn, and dcommit is, understandably, not very happy.
I'm intending to instead do something like a
git format-patch svn-branch..git-branch
git checkout svn-branch
... apply all the patches ...
git commit
git svn dcommit
# back to the git work
git checkout git-branch
# this shouldn't have to do merging - but it will have the parents
to make it clear where the last merge happened from ?
git merge svn-branch
I'm happy that I'm bludgeoning changes in one big blob into SVN, as I
can reasonably say 'if you want the real details, go look at gitweb)
I've tried doing this with
git checkout svn-branch
git merge --squash git-branch
But I don't get the result I'm expecting - what have I missed?
That merge command will produce a single commit, which isn't what you
want. format-patch + am should work to linearize history, but you
could also use rebase.
I recommend trying something like
git checkout -b test svn-branch && git format-patch svn-branch..git-
branch | git am
Then you can examine your test branch to make sure it's linear, make
sure it compiles and looks good, then if it's good merge that into svn-
branch (which will be a fast-forward).
-Kevin Ballard
--
Kevin Ballard
http://kevin.sb.org
kevin@xxxxxx
http://www.tildesoft.com
--
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