Git -- Reset 详解 (来自官方手册)

本文介绍了如何使用Git进行版本切换和回溯,包括`git reset --hard`命令的使用,如HEAD^和特定commit id。还阐述了在提交错误后如何通过reset修改历史,以及如何在创建新分支后回退主分支。对于开发者来说,理解这些操作对于日常开发和分支管理至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Reset

Fundamentals

git 可以在不同版本之间切换; 仓库里面的文件会因此改变(电脑里面的也会。。。)

git reset --hard HEAD^  返回上一次
git reset --hard <地址>  // 比如 3af8a6

常用命令

git reset [<mode>] [<commit>]

mode 说明参考官网

commit 可以是 commit id 或者 HEAD, HEAD^ (HEAD 前一次 commit) , HEAD~2 (HEAD 前两次 commit) …

应用场景

Commit 提交后想要更改

Commit 之后发现 Commit 内容有误,想要更改文件。如果不想再 Commit 一次,可以使用 Reset 回溯之前的版本。

git commit ...
git reset --soft HEAD^      (1)
edit                        (2)
git commit -a -c ORIG_HEAD  (3)

(1) 中 reset 后将之前的 commit 保存在 .git/ORIG_HEAD 中。(3) 中再次提交时选择该 Commit 。参数 -c 代表更改 commit message-C 则不更改直接提交。

创建开发分支并回退主分支

就是意识到当前分支不适合作为主分支,想要回退到之前分支并保留当前分支为开发分支(dev)

git branch dev          	  (1)
git reset --hard HEAD~3       (2)
git switch dev          	  (3)

(1) 中创建新分支。(2) 中回退当前分支至之前。(3) 中切换为新分支。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值