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
相关推荐
yuanbenshidiaos8 小时前
讲讲git 和svn
git·svn
刃神太酷啦9 小时前
类和对象(1)--《Hello C++ Wrold!》(3)--(C/C++)
java·c语言·c++·git·算法·leetcode·github
s91236010111 小时前
Git 用法总结
git
江边垂钓者20 小时前
Git简介和发展
git
大卫小东(Sheldon)1 天前
GIM: 调用AI自动生成git提交消息的工具
git·rust
程序设计实验室1 天前
如何清理误提交到git的历史大文件?
git
江边垂钓者1 天前
Git初始化相关配置
git
wumu_Love1 天前
git 报错:错误:RPC 失败。curl 28 Failed to connect to github.com port 443 after 75000
git·rpc·github
powerfulzyh1 天前
Git 时光机:修改Commit信息
git
极小狐1 天前
如何使用极狐GitLab 软件包仓库功能托管 terraform?
linux·运维·git·ssh·gitlab·terraform