代码之家  ›  专栏  ›  技术社区  ›  Sander Verhagen

编辑rebase/squash提交消息时筛选重复项

git
  •  0
  • Sander Verhagen  · 技术社区  · 6 年前

    试图解决一个小麻烦。 未成年人 我知道…

    我经常重新安排订单,然后挤压相关的提交。为了在这样做的同时保持我自己的理智,我尝试向相关提交提供相同的提交消息,例如:

    1 pick e5e2ba2b Message 1
    2 pick 6ad71924 Message 2
    3 s f853008e Message 2
    4 pick 0a04db83 Message 3
    5 
    6 # Rebase d0b1a378..0a04db83 onto d0b1a378 (4 commands)
    7 #
    8 # Commands:
    ...
    

    为了被压扁的承诺 6ad71924 / f853008e Git将再次弹出编辑器(很好),将每个提交消息放入建议的消息中,尽管这些消息实际上是相同的提交消息(ugh)。有没有办法不看到重复的提交消息?也许我可以在编辑器弹出之前添加一些钩子来过滤提交消息?

    1 回复  |  直到 6 年前
        1
  •  2
  •   JakeD    6 年前

    tldr:通过使用“fixup”而不是“squash”,提交的消息将被丢弃。

    来自 docs :

    如果要将两个或多个提交折叠为一个提交,请将第二个和后续提交的命令“pick”替换为“squash”或“fixup”。如果提交的作者不同,则折叠提交将归因于第一个提交的作者。折叠提交的建议提交消息是第一次提交和“squash”命令的提交消息的串联,但省略了“fixup”命令提交的提交消息。