In your case, you can rebase interactive: git rebase -i HEAD~4
Then you can just reorder your picks
For example lets add three more files to our branch:
git add A
git commit -m "A"
git add B
git commit -m "B"
git add C
git commit -m "C"
Your shortlog will be:
$ git shortlog
(3):
A
B
C
If you want to reorder B with C:
$ git rebase -i HEAD~2
pick 1f9133d B
pick 33f41be C
You just re-order them to be:
pick 33f41be C
pick 1f9133d B
After you're done writing, see the shortlog:
$ git shortlog
(3):
A
C
B
You can do the same thing with all the commits by re-ordering. It is like what you see is what you get, which is pretty cool :)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…