如何让git rebase -i按git log默认顺序展示并应用提交?
让
git rebase -i的提交列表与git log默认顺序一致 git rebase -i默认会把最旧的提交放在列表顶部,而git log默认是最新提交排在最前面,要让两者顺序统一,不用手动反转列表,有两种靠谱的方法:
方法1:单次变基时指定顺序
执行交互式变基命令时,加上--reverse参数,就能让编辑列表的顺序和git log默认一致:
git rebase -i --reverse <基准提交>
举个例子,如果你要调整当前分支最近5个提交,就用:
git rebase -i --reverse HEAD~5
打开的编辑界面里,提交顺序完全匹配git log的展示,编辑完Git能正常识别执行,不用自己手动改顺序。
方法2:全局配置默认反转顺序
要是你希望每次用git rebase -i都默认用这个顺序,直接配置全局参数就行:
git config --global rebase.interactive.reverse true
配置完成后,所有交互式变基的列表都会自动按git log的默认顺序展示,不用每次加参数。
额外说明
- 不管用哪种方式,变基的执行逻辑没变:Git还是从旧到新处理你标记的操作(比如pick、squash),只是展示顺序符合日常阅读习惯了。
- 要是偶尔需要恢复默认的旧提交在前的顺序,加
--no-reverse参数就行:
git rebase -i --no-reverse <基准提交>
内容的提问来源于stack exchange,提问作者Kodiologist
相关产品推荐
相关产品推荐

