在工作中,有时候和别人的代码冲突了,在提交代码的时候忘记git fetch,这个时候很容易把别人的代码冲掉,导致一些致命的问题!
这个时候我们就需要学习git reset和git revert了,这两个命令还是有很大区别的!
1.git reset git reset有3个参数,可以自行百度,主要介绍--hard git reset hard 版本号 这个命令不推荐使用后,这样会让当前版本号到撤回的那个版本号之间的commit记录全部消去,使用git push origin branchName -f 强推,这是非常不友好的,一般在不建议git reset --hard 版本号 之后提交到远程分支。 如果强行使用 git reset操作
git log
git reset --hard 8bbcb15ff19b33b797b4821f4d06d1b579256bac
git push origin master -f
这里为什么强推被拒绝,主要是权限的问题,其他分支是没有问题的
2.git revert
这条命令对用户非常友好
git revert -n 版本号 相当于反做该条commit 记录,需要再次提交,不会覆盖以及去除原来的记录
image.png
git操作
git log (q退出)
git revert -n c8d3955357862ea32234a6c2d33e866136acf49f
git commit -m "revert operation"
git push origin master