git的流程如图:
当某次失误造成commit的版本有问题,需要回退到正常的版本修改后重新add。
首先通过git log
查看commit提交记录,可以看到HEAD->mater
是本地最新的commit,而origin/master, origin/HEAD
是远程仓库上的最新记录,而一个正常的(指commit后立马push)的log长这样commit cba5300cb0c425c6db6f6bf60412d914e4225194 (HEAD -> master, origin/master, origin/HEAD)
,本地提交记录和远程仓库的记录是同步的。
现在我们需要将本地HEAD回退到正常版本,比如我这里回退到origin->HEAD
,通过命令实现:git reset --soft c92524befc8b7913ed4b6f77fcbaf00fe1ec749e
,然后git log
查看日志可以看到回退成功
现在我们可以修改后再次git add
后通过git status
查看文件变动情况,检验是否符合期望。再使用git commit
进行提交,最后git push
推送到远程仓库