git之本地版本回退,然后发改远程版本:
回滚到指定提交版本:
$ git reset --hard a14201ce5a455c3ad0aff1043772a5f8822449bc
回退之后,可以直接用本地版本覆盖远程:
$ git push -f origin dev
还可以:
$ git push -f origin dev:dev
两者的关系
git push -f origin dev省略了目标分支,等价于:git push -f origin dev:dev
也就是:把本地的 dev 分支 推送到远程 origin 的 dev 分支,并且强制覆盖。
git push -f origin 本地分支:远程分支这种写法更灵活,比如:git push -f origin dev:feature-x意思是:把本地的
dev分支推到远程的feature-x分支(覆盖远程)。
总结
git push -f origin dev👉 本地dev→ 远程dev(强制覆盖)git push -f origin dev:dev👉 完整写法,结果一样git push -f origin dev:other-branch👉 本地dev→ 远程other-branch(强制覆盖)
