gpt4 book ai didi

git - 我怎样才能撤消我最后的 git 添加/提交?

转载 作者:IT王子 更新时间:2023-10-29 01:26:58 26 4
gpt4 key购买 nike

我编辑了一个文件并做了:

git add file.py
git commit -m 'fixed bug'

然后我编辑了另一个文件并修复了一个小错误。我不想要两个提交,一个接一个,显示“错误修复”。我想要一个带有“错误修复”的提交。

如何撤消上次添加/提交并更改第一个提交消息?

我正在查看 git resetgit revertgit undo 命令,但我不想搞砸我的 repo一个猜测

编辑:了解如何操作:http://www.gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html

最佳答案

如果您已经提交了第二个更改,请先重置它:

git reset HEAD^

现在你的 HEAD 是第一次提交,本地文件的内容没有改变。

git add <the file(s) for the second bug fix>
git commit --amend -m'bug fixes'

如果第二次错误修复要包含所有跟踪和更改的文件,您可以像往常一样运行它:

git commit -a --amend

修改提交就是这样:

  • 将索引中的更改添加到之前的提交中(因此需要 git add-a)
  • 允许您更改您的提交消息

不过要小心:如果您分发了第一个提交,其他人的 repo 协议(protocol)就会变得奇怪。您不应更改其他人已获取的提交。


您也可以使用 git merge --squash,这感觉更合乎逻辑,但不一定更容易。使用它将包含您的两个提交的分支 merge 到上一个提交。

压缩也适用于 git rebase

关于git - 我怎样才能撤消我最后的 git 添加/提交?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4498281/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com