Git - 如何修复错误的提交
乌吉特
哦不,这个提交太乱了!🤦♂️
我们每个人都会遇到不顺心的时候。我们可能会忘记添加文件、留下评论,或者合并操作没有按预期进行。幸运的是,Git 有一些命令可以处理这些常见情况,我想向你展示其中的一些。
修改提交信息
哎呀……您在提交信息中发现了拼写错误。不用担心,您可以修改它:
bash
git commit --amend -m "new message"
将文件添加到上次提交
你已经提交了更改,但忘记添加一些文件。没问题,你仍然可以将它们添加到提交中:
bash
git add <file_name>
git commit --amend HEAD~1
撤消提交
如果您想撤消最后一次提交但保留更改:
bash
git reset --soft HEAD~1
如果您想要撤消提交和更改:⚠️确保您想要丢失更改:
bash
git reset --hard HEAD~1
或者,如果您想撤消所有本地更改,您可以重置为分支的原始版本:
bash
git reset --hard origin/<branch_name>
如果您想撤消提交而不更改现有历史记录,您可以使用git revert
,此命令通过创建新提交来撤消提交:
bash
git revert HEAD
如果您刚刚解决了一些冲突,完成了合并,并推送到原点。但是,等等,出了点问题……
撤消已推送到远程分支的合并提交的安全方法是使用以下git revert
命令:
bash
git revert -m 1 <commit_id>
commit_id
是您想要恢复的合并提交 ID。
笔记:
-
您还可以撤消任意数量的提交。例如:
git reset HEAD~3
(返回 HEAD 之前的三次提交)。git reset --hard <commit_id>
(返回到特定的提交)。
-
git reset
如果尚未推送提交并且您不想向远程分支引入错误的提交,请使用。 -
用于
git revert
恢复已推送到远程分支的合并提交。 -
用于
git log
查看提交历史记录。 -
如果您愿意,您也可以创建一个包含修复程序的新提交。
希望您和我一样觉得这些命令有用,并且能够熟练使用它们。如果您已经了解这些命令,或者觉得缺少了某个命令,请在评论区告诉我。感谢您的阅读!
文章来源:https://dev.to/guivern/git-how-to-fix-a-bad-commit-4068