赞
踩
只回退到commit 区(本地仓库区),commit提交历史和工作区代码变更还保留:
git reset --soft abc1234
回退到暂存区,commit历史不保留,工作区代码保留:
git reset --mixed abc1234
彻底回退 commit 历史、暂存区和工作区,工作区代码不被保留(注意,这会导致所有未提交的变更丢失):
git reset --hard abc1234
- git reset --hard HEAD^ # 回退到上一个版本
- git reset --hard HEAD~n # 回退到n个版本之前,n为数字
git reset --hard <commit_hash> # 回退到指定的提交,commit_hash是具体的提交ID
1.根据版本号回滚示例:
soft 可以替换成hard mixed
- git reset --soft HEAD^ (回滚到上一个版本)
- git reset --soft HEAD~2 (回滚两个版本)
- git reset --soft HEAD~3 (回滚三个版本)
2.根据提交ID回滚示例:
查看当前状态
首先查看当前的提交历史:
git log --oneline
输出类似如下:
- def4567 Second commit
- abc1234 First commit
执行回滚 ( soft 可以替换成hard mixed)
使用 git reset --soft
来回退到 abc1234
:
git reset --soft abc1234
查看当前状态
这时再次查看提交历史和状态:
git log --oneline
现在你会看到:
abc1234 First commit
但是,此时你的工作目录和暂存区还保留着 def4567
的更改内容。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。