git reset --hard xxx , git reset
2018-12-12 本文已影响6人
一十五步
git reset --hard xxx , git reset --soft xxx , git revert xxx
git revert
撤销某次操作(commit),并把这次撤销当做一次新的提交,版本号递增,就是用一次新的提交(commit)来回滚之前的commit。
撤销前一次 commit
git revert HEAD
image.png
首先,我分3次建立了3个文件夹!
首先,执行git revert head ,会删掉file3,并生成一次log记录。
image.PNG
image1.PNG
git reset
git reset 常用于代码回滚,是直接删除指定的 commit, 但是文件和修改会移动到 workspace 工作区.
1. git reset --soft xxx:
soft命令会让版本回到某次commit后的状态,但并不改动工作目录中的文件。执行git reset --soft后
可以看出版本退回了q1,但之前提交的文件变成了有新改动的状态。
2.git hard (修改版本库,修改暂存区,修改工作区)
hard HEAD~1 (或是版本号)意为将版本库回退1个版本,但是不仅仅是将本地版本库的头指针全部重置到指定版本,也会重置暂存区,并且会将工作区代码也回退到这个版本
二者的区别:
git reset 是把HEAD向后移动了一下
git revert 是HEAD继续前进,只是新的 commit 的内容和要 revert 的内容正好相反,能够抵消要被revert的内容.
小