dav*_*ave 18 git commit undo repository
我编辑了一个文件并做了:
git add file.py
git commit -m 'fixed bug'
Run Code Online (Sandbox Code Playgroud)
然后我编辑了另一个文件并执行了一个小错误修复.我不希望两个提交,一个接一个,显示'错误修复'.我想要一个提交'bug fixes'.
如何撤消上次添加/提交并更改第一个提交消息?
我一直在寻找的git reset,git revert,git undo命令,但我不想搞砸了我的回购带猜
编辑:了解如何做到:http://www.gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html
Gau*_*ier 35
如果您已提交第二次更改,请先重置:
git reset HEAD^
Run Code Online (Sandbox Code Playgroud)
现在您HEAD处于第一次提交,并且本地文件的内容保持不变.
git add <the file(s) for the second bug fix>
git commit --amend -m'bug fixes'
Run Code Online (Sandbox Code Playgroud)
如果要为第二个错误修复包含所有跟踪和更改的文件,您可以像往常一样运行它:
git commit -a --amend
Run Code Online (Sandbox Code Playgroud)
修改提交正是这样的:
git add,或-a)但要小心:如果你分发了第一个提交,其他人的回购会变得奇怪.您不应该更改其他人提取的提交.
您也可以使用git merge --squash,感觉更合乎逻辑,但不一定更容易.使用它来合并包含两个提交的分支,直到前一个提交.
压扁也适用git rebase.
| 归档时间: |
|
| 查看次数: |
19173 次 |
| 最近记录: |