git push之后回滚到某个版本

背景

因为粗心在主分支上修改了代码,push了上去,污染了主分支,希望将主分支之后的修改回滚,包括提交记录,就是远程的记录中回到希望回到的版本,保持干净。

git push -f 可以做到,会冲掉所有的commit,如果git push -f 之后希望回滚:http://blog.sina.com.cn/s/blog_66cd08930102x0ln.html

如果不希望将后面的commit全部冲刷掉,https://blog.csdn.net/gomeplus/article/details/78241070

针对于我的需求(希望将远端后续的commit冲掉,从而保证纯净)

  1. 切换到需要回退到历史的分支(比如uat的脏了,就回退uat的),然后继续下面两步
  2. 切换到需要回退到历史的分支(比如uat的脏了,就回退uat的)的commit id:

git reset --hard 381b971f62f3f16f098d4f2406b33eb94bf91209

  1. 强推倒远程(同时会将已经脏的push操作删除,回到最原始的状态)

git reset --hard 381b971f62f3f16f098d4f2406b33eb94bf91209

引用

回退命令:
$ git reset --hard HEAD^ 回退到上个版本
$ git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前
$ git reset --hard commit_id 退到/进到 指定commit的代码

强推到远程:
$ git push origin HEAD --force
https://www.cnblogs.com/spring87/p/7867435.html

相关推荐

  1. git push之后某个版本

    2024-07-09 22:34:04       19 阅读
  2. git 如何某个节点

    2024-07-09 22:34:04       25 阅读
  3. Git 备份当前 branch 并当前版本

    2024-07-09 22:34:04       29 阅读
  4. Git学习笔记:版本

    2024-07-09 22:34:04       39 阅读
  5. git checkout 某个分支后如何退执行之前的分支

    2024-07-09 22:34:04       39 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-09 22:34:04       50 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-09 22:34:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-09 22:34:04       43 阅读
  4. Python语言-面向对象

    2024-07-09 22:34:04       54 阅读

热门阅读

  1. 使用工业自动化的功能块实现大语言模型应用

    2024-07-09 22:34:04       22 阅读
  2. Linux 内核编译与模块开发:深入掌握系统核心

    2024-07-09 22:34:04       24 阅读
  3. CUDA Kernel调试与优化--背景知识扫盲(LLM生成)

    2024-07-09 22:34:04       15 阅读
  4. C语言希尔排序详解与实例

    2024-07-09 22:34:04       20 阅读
  5. 多尺度旋转编码

    2024-07-09 22:34:04       19 阅读