使用场景: 如果本地提交冲突导致push不了,可以回退后,检查一下。
要回退最近一次的本地 Git commit,可以使用以下方法:
1. 回退最近一次的提交,但保留改动
如果你想撤销最近的一次提交,但保留文件的改动(即将改动回到暂存区),你可以使用以下命令:
git reset --soft HEAD~1
HEAD~1指的是最近一次提交。--soft选项表示撤销提交但保留文件的改动到暂存区。
此时,你的代码更改仍然保留,可以进行新的提交或修改。
2. 回退最近一次的提交,并且不保留改动
如果你想彻底撤销最近一次提交,且不保留任何改动(即文件恢复到提交前的状态),使用以下命令:
git reset --hard HEAD~1
--hard选项表示完全回退提交,工作区中的文件也会被恢复到上一个提交的状态。
3. 仅撤销最近一次的提交(不改变文件)
如果你仅仅想撤销最近一次提交,但保留工作区文件(即改动仍然在工作区,但未提交),可以使用:
git reset --mixed HEAD~1
此命令会将提交的改动移到工作区,撤销提交,但不会影响文件内容。
4. 查看提交历史
在进行回退之前,你可以通过以下命令查看最近的提交历史:
git log --oneline
这会显示最近的提交记录,方便你确认要回退的提交。
5. 注意事项
--hard会丢失所有未提交的改动,所以使用时要小心,确保你不需要这些改动。--soft和--mixed允许你保留修改内容,适用于需要调整提交的情况。
根据你想要的效果选择合适的命令来回退最近一次的提交。如果有更多问题,随时告诉我!
评论
使用 GitHub 账号登录后即可评论