2

有没有更简单的方法来编辑提交日志?(如红色箭头所指的日志)

如果是,如何在命令行或 gittower 中执行?

谢谢! 在此处输入图像描述

4

2 回答 2

2

只要你还没有推送到服务器,你就可以使用:

git rebase -i f88232a^

这将以交互方式重新设置从 f88232a 开始的所有提交。^那里告诉 git 使用 f88232a 之前的提交作为 rebase 操作的根。运行此命令时,您将看到如下内容:

pick f88232a Update
pick 57bfaca Change, redirect to index after finishing create
pick d23c917 Add missing column: result
...

将第一个更改pickeedit。现在你会看到

Stopped at f88232a... Update
You can amend the commit now, with

    git commit --amend

Once you are satisfied with your changes, run

    git rebase --continue

现在运行

git commit --amend

更改您的提交消息并保存,然后运行

git rebase --continue

瞧!请注意,您将一直重写到 f88232a 的历史记录。从 f88232a 到现在的每个提交都将替换为具有新 SHA 的新提交。如果您有任何分支,这将很快变得丑陋,因为这些将基于旧的提交。但它应该可以解决问题。

于 2014-01-24T14:11:14.897 回答
1

不,没有一种简单的方法可以做到这一点(并不意味着没有办法,但它会在有问题的提交之后改变每一次提交)。

Git 最初的设计目的是让改变历史变得非常困难。下次执行更好的提交描述规则。(您可以使用挂钩来执行基本检查)。

于 2014-01-24T10:31:52.623 回答