Git 命令行代码回退

236 阅读2分钟
本文已参与「新人创作礼」活动,一起开启掘金创作之路。

Git 命令行代码回退

前置知识

git log 命令显示从最近到最远的提交日志,如果觉得输出信息太多,可以试试加上--pretty=oneline参数。

撤销工作区代码

git checkout -- <file>

撤销暂存区代码

  1. 将暂存区代码撤销到工作区,git reset HEAD
  2. 将工作区的代码撤销

撤销本地仓库代码

git reset --hard <版本号>

  1. 可以使用 HEAD^ 来描述版本,一个 ^ 表示前一个版本,两个 ^^ 表示前两个版本,以此类推
  2. 也可以使用数字来代替 ^,比如说前 100 个版本可以写作 HEAD~100
  3. 也可以直接写版本号,表示跳转到某一个版本处。我们每次提交成功后,都会生成一个哈希码作为版本号,所以这里我们也可以直接填版本号,哈希码很长,但是我们不用全部输入,只需要输入前面几个字符即可,就能识别出来

撤销远程仓库代码

命令行方式

先在本地仓库撤销,然后 push 到远程仓库

IDEA方式

未提交撤销:直接点击 Rollback 按钮,选择具体文件

已提交撤销:查看提交日志进行回退

  1. Revert Commit : 只能在最近一次提交上使用,不能在其他提交上使用
  2. Undo Commit : 这个操作到处都能用,不同于 Undo Commit,Revert Commit 之后,会产生一条提交记录。相当于 Revert Commit 其实也是提交,只不过提交的内容刚好相反,刚好刷掉已有内容

已push撤销

先在本地仓库撤销,撤销完成后,重新修改代码,最后再 force push 就行了,不过 force push 的时候,注意别把同事的代码给覆盖! 注意别把同事的代码给覆盖! 注意别把同事的代码给覆盖!。

打开微信搜索:R先生专栏,点关注,不迷路!