You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
O ------> O ------> O O ------> O ------> O -------> O
^ ^ ^ --[git revert HEAD]--> ^ ^ ^ ^
版本 A 版本 B 版本 C [HEAD] 版本 A 版本 B 版本 C 版本 D [HEAD]
其中,版本 D 撤销了版本 C 的更改;它与版本 B 的内容是相同的。
Activity
dondonZh commentedon Jul 11, 2019
印象中是push和没push的区别
haizhilin2013 commentedon Jul 11, 2019
@dondonZh 啊?查漏补缺的时候来了
dondonZh commentedon Jul 11, 2019
git reset的作用是修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本
如果想恢复到之前某个提交的版本,且那个版本之后提交的版本我们都不要了,就可以用这种方法
git revert的作用通过反做创建一个新的版本
如果我们想恢复之前的某一版本(该版本不是merge类型),但是又想保留该目标版本后面的版本,记录下这整个版本变动流程,就可以用这种方法。(摘自博客)
pokerLife commentedon Jul 11, 2019
ghost commentedon Jul 11, 2019
git reset
:将某次提交后的版本全部抹除;变动如下通常,在与他人协作开发时,将已经提交到远端的更改 reset 回去不是一个好主意。如果执意要这么做,那么 push 时应该加上
-f
选项用本地内容强制覆写远端。git revert
:创建一次新的提交,将某次提交的更改撤销;变动如下smile-2008 commentedon Feb 26, 2021