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
相关推荐
微尘寒风12 小时前
【Git】的安装和使用
java·git
胖大和尚1 天前
Git初始化本地文件夹,并推送到远端
git
啵啵啵12341 天前
Git 底层原理:分支为什么只是一个 41 字节的文件
git
demon75520031 天前
Git Worktree详解介绍
git·worktree
胖大和尚1 天前
当前仓库推送到同一台机器上的另一个文件夹
git
轮到我狗叫了2 天前
git - 版本控制工具 - 对应的常见命令 - 以及无需后续每次手动source conda
git
changxiang2 天前
GIT 备忘
git
DogDaoDao3 天前
Windows 开发提效工具全景指南:60+ 工具的工程化分层配置
windows·git·程序员·开发工具·powershell·everything·msys2
wdfk_prog3 天前
GitHub push 失败:如何扫描并清理 Git 历史中的大文件
git·elasticsearch·github
大明二代3 天前
使用 Traefik、cert-manager 和 DNS-01 为内网 Kubernetes 服务配置 HTTPS
git·kubernetes·flux