git revert和reset(git revert 和 git reset的区别)

本文目录
git revert 和 git reset的区别
1,git revert 是撤销某次操作,此次操作之前的commit都会被保留。
2,git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区。
3,git revert会生成一个新的commit,将之前的某个commit的修改恢复过来。
4,git reset会将HEAD移动到某个commit上,换种说法就是将某个commit变成最后一个commit
5,譬如现在有A,B,C三个commit
执行git revert C的话,会生成commit D,当前code的内容会变成和B一样
执行git reset B --hard的话,会在当前的工作目录中将C丢弃掉,内容变成和B一样
从内容上来看,这两种做法是一样的;但从commit的历史来看,是不同的。
6,英语的学习不是一朝一夕的,是需要长时间的积累过程,单词,语法,听力,这些是最基本的,不过最主要的是口语的练习,多听多练是最有效的,最好是可以经常和外国人交流,进行语言的交换,文化的交流也是可以提升外语的。
git revert和git reset的区别
git revert 和 git reset的区别
1. git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit。
2. 在回滚这一操作上看,效果差不多。但是在日后继续merge以前的老版本时有区别。因为git revert是用一次逆向的commit“中和”之前的提交,因此日后合并老的branch时,导致这部分改变不会再次出现,但是git reset是之间把某些commit在某个branch上删除,因而和老的branch再次merge时,这些被回滚的commit应该还会被引入。
3. git reset 是把HEAD向后移动了一下,而git revert是HEAD继续前进,只是新的commit的内容和要revert的内容正好相反,能够抵消要被revert的内容。

更多文章:
blast premier春季赛(csgo战队vitality有谁)
2026年9月7日 21:50
全球新冠肺炎疫情背景下航运发展(盐田港复苏日志:半年历劫从“低谷”到“爆仓” 疫情之后巨轮如何越洋航行)
2026年9月7日 17:10
matlab求解带字母参数方程组(我想matlab求一个关于x,y的方程组 ab c d f e h m n 都是参数)
2026年9月7日 16:30
oracle中的循环语句(下面哪个不是oracle程序设计中的循环语句 a for)
2026年9月7日 15:30
电脑里2个系统怎么删除一个(电脑开机显示有两个系统,如何删除一个)
2026年9月7日 12:20





