Even more aggressive commit trimming.
Now we cut out a commit if any of its parents had the same tree; just use
that parent in its place. This makes the history look nice, but I don't
think it's quite right...
Now we cut out a commit if any of its parents had the same tree; just use
that parent in its place. This makes the history look nice, but I don't
think it's quite right...
Prune out some extra merge commits by comparing their parents correctly.
Quick test script for generating reasonably complex merge scenarios.
Skip over empty commits.
But we still need to get rid of unnecessary merge commits somehow...
But we still need to get rid of unnecessary merge commits somehow...
Hmm... can't actually filter rev-list on the subdir name.
Otherwise we can't keep track of parent relationships. Argh.
This change makes it "work", but we get a bunch of empty commits.
Otherwise we can't keep track of parent relationships. Argh.
This change makes it "work", but we get a bunch of empty commits.
Added a --onto option, but it's so complicated I can't tell if it works.
Use information about prior splits to make sure merges work right.
Add a new --rejoin option.
The idea is to join the new split branch back into this one, so future
splits can append themselves to the old split branch. We mark the split
branch's history in our merge commit, so we can pull it back out later.
The idea is to join the new split branch back into this one, so future
splits can append themselves to the old split branch. We mark the split
branch's history in our merge commit, so we can pull it back out later.
Print out the newly created commitid at the end, for use in other scripts.
We now copy the other stuff about a commit (changelog, author, etc).
'git subtree split' now basically works.
basic options parsing and whatnot.