git进阶--5---git reset 和 git revert 的区别与联系

git进阶--5---git reset 和 git revert 的区别与联系

1. 相同点

  • 都是对版本做出一些改变

2. 不同点

  • git reset 是进行版本回退,根据不同的参数,是定是否复原索引和工作区
  • git revert 是撤销上一次的提交,不会改变过去的历史,安全的取消过去发布的提交

3. 使用

  • git reset可以指定ID,从指定的ID版本号开始回退,如果不指定,则从当前ID版本号开始回退
  • 可以携带参数
  • --mixed(默认参数),只回复到暂缓区
  • --hard, 暂缓区和工作区都恢复
  • --soft, 暂缓区和工作区都不会变化
  • git revert
  • git revert HEAD
  • git revert HEAD^

4.使用场景

  • 如果回退分支的代码以后还需要使用,只是回退一下,则使用git revert
  • 如果分支是提错的,并且不想让别人知道只写错误代码,则使用git reset
相关推荐
唐青枫5 小时前
为什么 .gitignore 不生效?其实你忘了用 git rm --cached!
git
代码or搬砖1 天前
Git学习笔记(三)
笔记·git·学习
虾说羊1 天前
git连接远程仓库并拉去推送以及克隆命令
git
IT~狂男1 天前
GIT 实战命令操作大全,代码变动,推动,修改备注,撤销(篇幅一)
git
前端拿破轮1 天前
从0到1搭一个monorepo项目(一)
前端·javascript·git
消失的旧时光-19431 天前
git的 Rebase
git
风禾万里2 天前
Git怎么管理软件版本(代码,模型,配置等)
git
默默coding的程序猿2 天前
3.git的分支携带问题是什么?怎么解决?
java·git·python·svn·gitee·github·intellij-idea
天地人-神君2 天前
将.idea取消git托管
java·git·intellij-idea
Zach_yuan2 天前
版本控制器Git
linux·git