Re: [PATCH] contrib/subtree: Split history with empty trees correctly
- From
- Marcus Brinkmann <m.brinkmann@semantics.de>
- Date
- Jan 28, 2016, 04:06 UTC
- Message-ID
- <56A993D7.3000107@semantics.de>
- In-Reply-To
- <87fuxil8cw.fsf@waller.obbligato.org>
On 01/28/2016 03:56 AM, David A. Greene wrote:
Show 15 quoted lines
> Marcus Brinkmann <m.brinkmann@semantics.de> writes: > >> With my patch, "git subtree split -P" produces the same result (for my >> data set) as "git filter-branch --subdirectory-filter", which is much >> faster, because it selects the revisions to rewrite before rewriting. >> As I am not using any of the advanced features of "git subtree", I will >> just use "git filter-branch" instead. > > Heh. :) > > I hope to replace all that ugly split code with filter-branch as you > describe but there are some cases where it differs. It may be that your > changes fix some of that. > > Are you still able to do a re-roll on this?
I have to admit that my interest has declined steeply since discovering that subtree-split and filter-branch --subtree-filter give different results from "git svn" on the subdirectory. The reason is that git-svn includes all commits for revisions that regular "svn log" gives on that directory, which includes commits that serve as branch points only or that are empty except for unhandled properties.
While empty commits for unhandled properties wouldn't be fatal, missing branch points make "git svn" really unhappy when asked to rebuild .git/svn.
As migration from SVN is my main motivation at this point to use a subtree filter at this point (git-svn is just very slow - about one week on our repository), I am somewhat stuck and back to using git-svn. Although hacking up something with filter-branch seems like a remote option, it's probably nothing that generalizes.
It didn't help that "make test" in contrib/subtree gives me 27 out of 29 failed tests (with no indication how to figure out what exactly failed).
Oh well :)
Marcus