Re: Editing the root commit
flat view
From: Chris Webb <hidden>
Date: 2016-06-15 22:54:08
Junio C Hamano [off-list ref] writes: [symbolic reference to root commit]
Also there is a more important question: Which root commit? There does not necessarily have to be a single "the root" commit in the history.
Ah yes, very good point. Anything with a subtree merge would have several roots, for example. I suppose the thing that makes root commits special is their lack of parents, so the most direct way to get a list of root commits for the current branch would just be git rev-list --max-parents=0 HEAD making the recipe ROOT=$(git rev-list --max-parents=0 master) git checkout "$ROOT" -- # will fail if more than one root git commit --amend git rebase [--interactive] --onto HEAD "$ROOT" master
I personally think "git rebase -i --root" should be made to just work without requiring "--onto" and let you "edit" even the first one in the history. It is understandable that nobody bothered, as people are a lot less often rewriting near the very beginning of the history than otherwise. Even though I wouldn't bother doing this myself, I wouldn't mind reviewing a patch series ;-)
Okay, I'll take a look when I finish my current project! Best wishes, Chris.