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

git使用

1 如何撤销已经push到远端的commit

   撤销已经提交到远端的最近两次提交 git reset --hard HEAD~2 git push --force origin sram_size:XP/sram_size_fix(本地分支名:远端分支名)

 

     撤销已经提交到远端的最近一次提交 本地回退提交:首先,在本地回退到最近一次提交之前的状态(即回退到 HEAD~1 或特定的 commit hash)。 为了保留本地的修改(作为未暂存的变化),通常使用 --mixed 选项(这也是 git reset 的默认选项) git reset --mixed HEAD~1 git push --force origin new-huracan:new-huracan

 

 

2 如何撤销git add的代码

撤销commit [root@localhost sequoia]# git reset --soft HEAD^

撤销所有 git add过的代码 [root@localhost sequoia]# git reset --mixed

撤销某个文件夹下的代码 git reset HEAD -filename

 

3 git merge 使用方法 Git 的 git merge 命令用于 合并分支,将另一个分支的更改整合到当前分支。以下是详细的使用方法和常见场景:

基本用法 : 合并其他分支到当前分支

3.1 确保当前分支是要合并到的目标分支(例如 main)

3.2 执行合并(将 feature-branch 合并到 main当前分支) git merge feature-branch (源分支的名称 例如 origin/merge)

3.3 如果没有冲突 那么 git log --oneline --graph 查看是否正确的

git log git log --oneline --graph 可以看到如下 红色四个被挪过来了。符合预期!!

[root@localhost *****]# git log --oneline --graph

* 7f5623a76 (HEAD -> XP/master, origin/merge) ***************** *

5c706b7bb ***************** *

87e106436 ************** *

30b72b3d1 **********************

3.4 提交push 到远程分支 git push origin XP/master:XP/master (第一个本地分支 第二个远程分支)

 

4 将最近几次 Git 提交合并为一个 Patch 文件

方法一:使用 git format-patch 适用于发邮件, 他会把每一次变更都显示出来,同一段代码不会合并(linux内核的diff文件通常适用此方法一)

git format-patch HEAD~3..HEAD --stdout > combined_patch.patch 这会创建一个包含最近三次提交变更的单个 patch 文件。

方法二:先合并提交再生成 patch 1. 首先使用交互式 rebase 合并提交: git rebase -i HEAD~3 2. 在编辑器中,

将第二和第三次提交前的 pick 改为 squash 或 fixup: text pick [最早的提交哈希] 第一次提交信息 squash [中间提交哈希] 第二次提交信息 squash [最新提交哈希] 第三次提交信息 3. 保存退出后会提示你编辑合并后的提交信息

4. 然后生成 patch: git format-patch HEAD~1 --stdout>combined_patch.patch

 

方法三:使用 git diff (适用于大部分开发人员) 如果你只需要变更内容而不需要完整的提交信息:适用于,这方法适用于平时编辑,而不是对外邮件介绍改动内容

git diff HEAD~3 HEAD > combined_changes.patch

注意事项

• format-patch 生成的 patch 包含完整的提交信息,适合通过邮件发送或应用时保留元数据

• diff 生成的 patch 只包含变更内容,更简洁但丢失了提交信息 •

如果要应用这些 patch,可以使用 git apply 或 git am 命令 选择哪种方法取决于你后续如何使用这个 patch 文件。

http://www.wxhsa.cn/company.asp?id=6724

相关文章:

  • 测试开发全日制学徒班火热报名中|跟着名企大咖做真实项目,结业即上岗
  • 墨刀是否能替代Axure?从产品经理三大画图能力深度分析
  • AI 自动化智能体训练营
  • 微信商户绑定微信公众号、小程序
  • 唯创知音AI语音交互芯片与模组介绍
  • k3s 高可用集群部署(内置 etcd + VIP + keepalived)
  • 问HashMap底层原理?
  • 用 Go 重写 adbkit:原理、架构与搭建实践
  • C语言环境搭建之Linux子系统使用vscode连接子系统
  • 移远AT指令笔记
  • 数据类型
  • iphone运行windows系统
  • NVR接入录像回放平台EasyCVR视频融合平台语音对讲配置指南
  • Ubuntu filebrowser网盘工具安装
  • 图片结构 - voasem
  • ESP32做AP,ESP8266做station,遥控
  • 实用指南:25年高联:一试填空题解析(下篇)
  • Spring AOP 面向切面编程 - 浪矢
  • jvm内存泄漏的排查tips总结
  • IPA
  • Chromium历史版本下载方式
  • 【ACM出版】第三届物联网与云计算技术国际学术会议 (IoTCCT 2025)
  • 2025年最全 Wiki 管理工具测评:ONES、Confluence、Notion......哪个更适合你?
  • 鼠你爱称重
  • 详细介绍:用户争夺与智能管理:定制开发开源AI智能名片S2B2C商城小程序的战略价值与实践路径
  • PlorarD(WEB中等)
  • 神经网络稀疏化设计构架方式和原理深度解析
  • 天下拍拍卖系统:二方系统也能扩展三方平台功能
  • express使用redis
  • day07 课程