阅读:176回复:0
如何撤销或者修正 git commit 提交?
问题描述
在二级子目录提交完后,发现漏掉了几个文件没有加,强迫症不想再提交一次,想要撤消刚才的提交操作。 git commit -m 'setup four 登录功能' [master f2e4f3f] setup four 登录功能 2 files changed, 84 insertions(+) create mode 100644 templates/index.html create mode 100644 templates/registration/login.html git status 位于分支 master 尚未暂存以备提交的变更: (使用 "git add <文件>..." 更新要提交的内容) (使用 "git checkout -- <文件>..." 丢弃工作区的改动) 修改: ../auth/urls.py 修改: ../db.sqlite3 修改: ../users/views.py 修改尚未加入提交(使用 "git add" 和/或 "git commit -a") 解决方法 git 提供一个选项 --amend ,用于修改最后一次提交。 此命令将使用当前的暂存区域快照提交。如果刚才提交完没有作任何改动,直接运行此命令的话,相当于有机会重新编辑提交说明,但将要提交的文件快照和之前的一样。 启动文本编辑器后,会看到上次提交时的说明,编辑它确认没问题后保存退出,就会使用新的提交说明覆盖刚才失误的提交。 cd ../ git add auth/urls.py db.sqlite3 users/views.py git commit --amend 两次的 commit 命令最终只是产生一个提交,第二个提交命令修正了第一个的提交内容。 验证 git log Author: dongnan <dongnan@zongming.net> Date: Sat Sep 29 09:35:53 2018 +0800 setup four 登录功能 commit f36ae5ca50f8eb101e8077d3fa5899dd608d3366 Author: dongnan <dongnan@zongming.net> Date: Sat Sep 29 09:06:54 2018 +0800 setup three 注册功能 ...省略 # reflog git reflog | head -n2 b62aa2f HEAD@{0}: commit (amend): setup four 登录功能 f2e4f3f HEAD@{1}: commit: setup four 登录功能 内容参考自: Git 基础 - 撤消操作 # |
|