指尖上的记忆指尖上的记忆
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub

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(强制覆盖)