版本回退——git checkout 和 git reset --hard

git checkout

git checkout 丢弃工作区的修改,并用最近一次的 commit 内容还原到当前工作区(还原对文件中内容的操作,无法对添加文件、删除文件起作用)

注:git checkout 将指定分支的指定提交内容还原到当前分支工作区。

示例:

$ git status
尚未暂存以备提交的变更:
  (使用 "git add <文件>..." 更新要提交的内容)
  (使用 "git restore <文件>..." 丢弃工作区的改动)
        修改:     executor/jenkins_opt/task.py

修改尚未加入提交(使用 "git add" 和/或 "git commit -a")
$ git checkout executor/jenkins_opt/task.py
从索引区更新了 1 个路径

首先使用 git status 查看当前工作区的状态,看到 executor/jenkins_opt/task.py 的修改尚未暂存。其中,
executor/jenkins_opt/task.py 文件的修改错误,使用 git checkout 回退到上一次 commit 的版本。

git reset

git reset --hard branch_name:清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换(恢复到上一次 commit 后的状态,上一次 commit 后的修改也丢弃)

未完待续!!!

你可能感兴趣的:(Git学习笔记,git)