当前位置: 首页 > news >正文

Git【撤销远程提交记录】

    在实际开发中,你是否遇到过错误的提交了代码,想要删掉本次提交记录的情况,你可以按照如下方法实现。

1、使用 git revert

         如果你想要保留历史记录,并且对远程仓库其他使用者的影响最小,你可以使用 git revert 命令。这个命令会创建一个新的提交,这个新提交是对之前提交的逆向操作。例如,要撤销最近的一次提交,你可以执行:

git revert HEAD 
git push origin main

        这里 main 是你的目标分支,根据实际情况可能需要替换。

2、使用 git reset(推荐)

        如果你需要从历史记录中完全删除某次提交,可以使用 git reset。注意,这种方法会重写历史,可能会给其他协作者带来问题。如果确定要这么做,可以按照以下步骤操作:

git reset --hard HEAD~1 
git push origin main --force

        这里 HEAD~1 将 HEAD 移回到前一次提交,--hard 选项会使工作目录中的文件状态与仓库同步。--force 选项用于强制推送到远程仓库,这会覆盖远程仓库中的历史。

3、使用 git push --force-with-lease:

        如果你需要强制推送,但又想确保不会覆盖其他协作者的工作,可以使用 --force-with-lease 选项。这个选项比 --force 更安全,它会在推送前检查远程分支的状态是否发生了改变。

git reset --hard HEAD~1 
git push --force-with-lease origin main
http://www.lryc.cn/news/401817.html

相关文章:

  • java基础学习:序列化之 - Fast serialization
  • Microsoft Build 2024 推出 .NET 9:Tensor<T>、 OpenAI Collaboration和.NET Aspire
  • 【Neural signal processing and analysis zero to hero】- 2
  • 好用的AI搜索引擎
  • 十、Java集合 ★ ✔(模块18-20)【泛型、通配符、List、Set、TreeSet、自然排序和比较器排序、Collections、可变参数、Map】
  • 阿里云开源 Qwen2-Audio 音频聊天和预训练大型音频语言模型
  • SpringBoot集成MQTT实现交互服务通信
  • python实现插入排序、快速排序
  • Spring Boot集成kudu快速入门Demo
  • html超文本传输协议
  • 利用AI辅助制作ppt封面
  • 【spring boot】初学者项目快速练手
  • Laravel+swoole 实现websocket长链接
  • 【C#】Array和List
  • SpringCloud网关的实现原理与使用指南
  • LabVIEW 与 PLC 通讯方式
  • 数据结构初阶·排序算法(内排序)
  • PL/SQL oracle上多表关联的一些记录
  • Java.Net.UnknownHostException:揭开网络迷雾,解锁异常处理秘籍
  • 第十课:telnet(远程登入)
  • 【概率论三】参数估计:点估计(矩估计、极大似然法)、区间估计
  • 自动化产线 搭配数据采集监控平台 创新与突破
  • 【Karapathy大神build-nanogpt】Take Away Notes
  • MySQL学习记录 —— 이십이 MySQL服务器日志
  • HTTPS请求头缺少HttpOnly和Secure属性解决方案
  • react基础样式控制
  • 【区块链 + 智慧政务】涉税行政事业性收费“e 链通”项目 | FISCO BCOS应用案例
  • Socket、WebSocket 和 MQTT 的区别
  • 企业网络实验(vmware虚拟机充当DHCP服务器)所有IP全部保留,只为已知mac分配固定IP
  • HouseCrafter:平面草稿至3D室内场景的革新之旅