git commit –amend
建议 git commit –amend 命令使用在未push到远端的场景。提交还未push到远端
在某次修改时,修改了README.md文件,同时新增了amendTest文件。但是在commit的时候,只提交了README.md,忘记了amendTest文件。
1 | [root@localhost gitTest]# git status |
此时,如果想将amendTest文件提交,同时不产生新的commit记录(即新提交内容合并到上一次提交中),可以使用git commit --amend
命令
1 | [root@localhost gitTest]# git add . |
使用该git commit --amend
命令后,会生成一个新的commitid,合并本次提交与上一次提交内容。
提交已经push到远端
如果上一次commit已经push到远端,使用git commit --amend
提交后,在push到远端时会被拒绝,通过git status
提示发现当前分支与origin/master已经分叉
通过git pull
将origin/master代码merge过来后,重新push可以推送成功
但是通过git log
可以发现远端仍是有两次提交记录。
1 | [root@localhost gitTest]# git log -n 3 --oneline |