提交后,有没有办法在线编辑
GitHub.com
中的提交信息?
从命令行,人们可以做
git commit --amend -m "New commit message"
正如以下问题中正确建议的那样:
尝试
git pull
,然后git push
已经起作用(同时没有任何其他提交干扰)。
但是可以通过
GitHub
网站完成吗?
git commit --amend
并按 Enter。git push --force origin example-branch
命令强制推送旧提交。来源:https://help.github.com/articles/changing-a-commit-message/
不,这不可能直接实现。每个 Git 提交的哈希值也是根据提交消息计算的。当您更改提交消息时,您会更改提交哈希。如果您想推送该提交,则必须强制该推送(git push -f)。但是,如果已经有人拉取了您的旧提交并基于该提交开始了工作,他们将不得不将他们的工作重新建立到您的新提交上。
您需要
git push -f
假设之前没有人拉取过另一个提交。当心,你正在改变历史。
对于intellij用户: 如果您想以交互方式对过去的提交进行更改(未推送),请按照 Intellij 中的以下步骤操作:
希望有帮助
不,因为提交消息与提交 SHA / 哈希相关,如果我们更改它,提交 SHA 也会更改。我使用的方法是对该提交创建评论。我无法以其他方式思考。
Android Studio / intellij 用户:
我被要求修改我在 github 上提交的补丁提交消息(并最终到达这里。)这就是我为完成工作所做的。
git clone [email protected]:YOURNAME/EXAMPLE.git; cd EXAMPLE; git fetch --all; git pull --all
git checkout -b patch-2 origin/patch-2 # create local patch-2 branch
git commit --amend # update the commit message
git push -f
这适用于分支上的最后一次提交。如果有问题的提交更深,您将需要做一些更复杂的事情。 (我不知道是否需要获取和拉取,但我只是在这行中过去,同时我正在做其他事情以节省时间。)
我也面临着同样的问题。
在你的 github 中查看特定分支,你就会知道该分支中第一个提交的提交 ID。对此进行变基:
git rebase -i <Commit SHA of first commit>
将打开一个编辑器。从 github UI 跟踪您的提交并打开编辑器并更改消息。