美文网首页
关于git reset 和 git revert的区别

关于git reset 和 git revert的区别

作者: WebsnowDrop | 来源:发表于2017-12-30 22:03 被阅读0次

今天来讲一讲关于git reset 和 git revert的区别

在本地新建一个仓库名为test

mkdir test

进入test cd test

将test初始化为git仓库

$ git init
Initialized empty Git repository in C:/Users/Administrator/Desktop/test/.git/

在仓库里面新建一个文件,并添加到仓库中

touch 1.txt
git add .
git commit -m "add 1.txt"

[图片上传失败...(image-44efc6-1514642567342)]

推送到远程仓库中
git remote add origin git@github.com:WebsnowDrop/test.git
这时,git就有了第一个commit add 1.txt

[图片上传失败...(image-7f6d09-1514642567342)]

git revert

下面,修改1.txt的内容为"第一次修改",这时1.txt的内容为
[图片上传失败...(image-7408b1-1514642567342)]

这时,执行

git revert HEAD 
git push origin master

我们看看会发生什么

[图片上传失败...(image-7ee995-1514642567342)]

我们看到commit增加了一条新的记录"Revert 第一次修改 "。
让我们看看1.txt的内容
[图片上传失败...(image-efc5f4-1514642567342)]

1.txt中的内容变为修改之前的内容了!我们添加的修改不见了。

所以,git revert的作用为
新增一次commit,而将工作区的内容还原到之前修改内容之前的版本

git reset

再让我们执行git reset d9fdc66ca52093b73874ba95a9d8eff4d011cda3看下效果
[图片上传失败...(image-fb9523-1514642567342)]
看到第二和第三次commit记录都消失了!
所以,git reset的作用为
将工作区,暂存区,仓库中的所有版本退回到指定id的版本

相关文章

网友评论

      本文标题:关于git reset 和 git revert的区别

      本文链接:https://www.haomeiwen.com/subject/plgwgxtx.html