23. git reset

基本概述

git reset 主要用来:重置当前分支的 HEAD 指针到指定的提交,并可以更新暂存区和工作区

基本用法

1.基本语法

bash 复制代码
git reset [mode] <commit>
  • mode:指定重置的模式,常用的模式包括 --soft、--mixed(默认)、--hard 和 --keep
  • commit:指定要重置到的提交(可以是提交的哈希值、分支名、HEAD 的相对位置等)

2. --soft 模式

bash 复制代码
git reset --soft  HEAD^
  • 重置版本库到上一版版本,被重置的修改放到工作区;工作区和暂存区不受影响

3. --mixed 模式(默认)

bash 复制代码
git reset --mixed HEAD^
# 或
git reset HEAD^
  • 重置版本库到上一版版本,被重置的修改放到工作区;重置暂存区,被重置的修改放到工作区

4. --hard 模式

bash 复制代码
git reset --hard HEAD~1
  • 重置版本库到上一个版本,重置暂存区,重置工作区,丢弃所有未提交的修改

5. --keep 模式

bash 复制代码
git reset --keep HEAD~1
  • 重置版本库到上一个版本,重置暂存区,工作区只保留未被覆盖的修改
相关推荐
明月_清风12 分钟前
拒绝盲目 Git:VS Code 神级插件 GitLens 的 9 个进效杀手锏
前端·git
goodspeed2 天前
Git Worktree:多分支并行开发的利器
git·github
雮尘4 天前
让 AI Agent 高效并行开发的命令-git worktree
人工智能·git·agent
南果梨5 天前
OpenClaw 完整教程!从安装到使用(官方脚本版)
前端·git·开源
Selicens6 天前
git批量删除本地多余分支
前端·git·后端
闲云一鹤7 天前
Git LFS 扫盲教程 - 你不会还在用 Git 管理大文件吧?
前端·git·前端工程化
vibecoding日记10 天前
为什么我就想要「线性历史 + Signed Commits」,GitHub 却把我当猴耍 🤬🎙️
git·编程工具
程序员小崔日记10 天前
如何将代码轻松上传到 Gitee?Git 使用全攻略!
git·gitee·上传
Bigger11 天前
为什么你的 Git 提交需要签名?—— Git Commit Signing 完全指南
git·开源·github