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
相关推荐
荔枝吻2 小时前
【AI总结】Git vs GitHub vs GitLab:深度解析三者联系与核心区别
人工智能·git·github
mrbone113 小时前
Git-git worktree的使用
开发语言·c++·git·cmake·worktree·gitab
小哈龙4 小时前
裸仓库 + Git Bash 搭建 本地 Git 服务端与客户端
开发语言·git·bash
GISer_Jing14 小时前
Git协作开发:feature分支、拉取最新并合并
大数据·git·elasticsearch
高山莫衣19 小时前
git rebase多次触发冲突
大数据·git·elasticsearch
码农藏经阁19 小时前
工作中常用的Git操作命令(一)
git
kobe_OKOK_20 小时前
【团队开发】git 操作流程
git·elasticsearch·团队开发
码农垦荒笔记20 小时前
Git 安装闭坑指南(仅 Windows 环境)
windows·git
CC码码1 天前
管理你的多个 Git 密钥(多平台多账号)
git·gitlab·github
CC码码1 天前
管理你的多个 Git 密钥(单平台多账号)
git·gitlab·github