git回滚
merge后有冲突,不想解决冲突,想取消merge
# 丢弃正在进行的merge
git merge --abort
git reset
- 回退到某个版本
# 回退到上个版本
git reset --hard HEAD^
# 回退到某个commit
git reset --hard commit_id
- 回退到某个版本,保留所有更改,不添加到暂存区
# mixed会把回退的内容留在本地,可再次通过git add 添加后commit
git reset --mixed commit_id
- 回退到某个版本,保留所有更改,添加到暂存区
# mixed会把回退的内容留在暂存区,可直接进行commit,不需要git add
git reset --soft commit_id
git revert
- 将中间的某个提交单独回退
# 如果是单独的commit可直接取消该版本的提交
git revert commit_id
# 如果是merge提交,需要选择保留的parent,如dev merge到master
git revert commit_id -m 1 // 表示保留mater分支
git revert commit_id -m 2 // 表示保留dev分支
网友评论