1.撤回本地的commit
(1)如下图,首先新增一个java文件TestGitCommit,文件的颜色为绿色,表明已经add到了本地的暂存区。
(2)接下来将TestGitCommit文件使用git commit 命令将其从暂存区添加到本地仓库中去。
点击Commit按钮
再看一下文件的颜色,已经不在是绿色了。证明已经添加到本地仓库了。
(3)撤回刚刚的commit操作,选中需要撤回commit操作的项目文件目录,点击Show in Explorer
(4)空白处右击,点击 Git Bush Here
(5)使用 git log 命令来查看日志
(6)使用如下命令
git reset --soft 0d2e37c4b8c58d3802dbe8d24d91bf73312b6ce6
haha@nb-haha MINGW64 ~/IdeaProjects/multi-thread (master)
$ git reset --soft 0d2e37c4b8c58d3802dbe8d24d91bf73312b6ce6
haha@haha MINGW64 ~/IdeaProjects/multi-thread (master)
$
查看日志,发现此时已经撤回了commit操作,再看代码,对应的文件又变为了绿色。
2.撤回push到远程的代码
(1)commit操作与上述是一样的,只不过这次需要push到远程仓库上面去,如下图点击push
(2)push成功之后,接下来去撤回。
(3)使用如下命令
git reset --soft 0d2e37c4b8c58d3802dbe8d24d91bf73312b6ce6
haha@nb-haha MINGW64 ~/IdeaProjects/multi-thread (master)
$ git reset --soft 0d2e37c4b8c58d3802dbe8d24d91bf73312b6ce6
haha@haha MINGW64 ~/IdeaProjects/multi-thread (master)
$
查看日志,发现此时已经撤回了commit操作,再看代码,对应的文件又变为了绿色。
但是这个时候远程仓库上这个文件还是存在的
(4)这个时候需要将本地的代码强制push到远程,使用如下命令
$ git push origin master --force
执行上述命令之后,就撤回了刚刚push到远程的代码了