git revert [--[no-]edit] [-n] [-m parent-number] [-s] [-S[<keyid>]] <commit>…
git revert --continue
git revert --quit
git revert --abort
git-revert - 反做版本库中已经存在的提交记录,默认情况下反做某条记录后会产生一条新的记录。
通过-n参数可以避免再次产生一条提交记录
-m指定回滚的父节点(当回滚记录是由两分支merge产生)
git revert与git reset的区别?
git revert用于反做某个commit,而git reset是回退到某个commit。假设有四笔提交:commit1,commit2,commit3,commit4,当前HEAD指向commit4,
(1)如果此时执行git revert commit2-hash就会撤销commit2提交,commit3和commit4不影响,默认产生一个commit 5,当前HEAD指向commit 5;
(2)如果此时执行git reset commit2-hash,则会将HEAD指向commit2,后面的commit3和commit4直接没了。
git revert --continue
cherry-pick 或者revert因为冲突失败后,解决了冲突继续提交
git revert --quit
清除git revert 操作进度,在cherry-pick 或者revert因为冲突失败可以清除状态
--abort
Cancel the operation and return to the pre-sequence state.
取消git revert ,回到上一步的状态