git revert
撤销指定commit, 例如: 有commit1commit10, 撤销commit5的改动, 则commit6commit10改动会保留;(所以实现效果上跟git reset
还是有区别的)
-
git revert HEAD
- 撤销上一次的commit;(会生成一新的commit, 执行成功将出现vi编辑界面,编辑新提交的注释)
-
git revert HEAD^
-
git revert HEAD~1
- 撤销前前一次的commit;(可能会出现冲突,需要解决冲突然后
git add
+git commit
生成新的commit
)
- 撤销前前一次的commit;(可能会出现冲突,需要解决冲突然后
-
git revert HEAD^^
-
git revert HEAD~2
- 撤销前三次的commit;(可能会出现冲突,需要解决冲突然后
git add
+git commit
生成新的commit
)
- 撤销前三次的commit;(可能会出现冲突,需要解决冲突然后
-
git revert 0d1d7fc32
- 0d1d7fc32为commitId, 撤销指定commit;(可能会出现冲突,需要解决冲突然后
git add
+git commit
生成新的commit
)
- 0d1d7fc32为commitId, 撤销指定commit;(可能会出现冲突,需要解决冲突然后
-
git revert -m 1 0d1d7fc32
- 0d1d7fc32为合并分支的commitId,回退merge操作;
- git reset的区别 代码撤销(回退)指令: 我跟
git revert
不止长的像,实现的功能也差不多!