From: Jesse Greenwald Date: Tue, 9 Nov 2010 14:34:49 +0000 (-0600) Subject: Split cmd now processes commits in topo order. X-Git-Tag: v1.7.11-rc0~176^2~6 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/6f4f84fa2a03f441826f323c291ca6566acd0d3a?ds=sidebyside Split cmd now processes commits in topo order. Added the "--topo-order" option to git rev-list. Without this, it seems that the revision list is coming back in reverse order but it is sorted chronologically. This does not gurantee that parent commits are handled before child commits. --- diff --git a/git-subtree.sh b/git-subtree.sh index ce94d363dc..390c0fc574 100755 --- a/git-subtree.sh +++ b/git-subtree.sh @@ -547,7 +547,7 @@ cmd_split() # We can't restrict rev-list to only $dir here, because some of our # parents have the $dir contents the root, and those won't match. # (and rev-list --follow doesn't seem to solve this) - grl='git rev-list --reverse --parents $revs $unrevs' + grl='git rev-list --topo-order --reverse --parents $revs $unrevs' revmax=$(eval "$grl" | wc -l) revcount=0 createcount=0