GIt Squash 多个提交压缩提交

这篇具有很好参考价值的文章主要介绍了GIt Squash 多个提交压缩提交。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

假设你有一个名为 feature 的分支,它包含三个提交(A, B, C),并且你想将这三个提交压缩成一个。下面是如何做到这一点的。

首先,找出你要开始压缩的那个最早提交的哈希值。在这个例子中,我们假设 A 是最早的提交。你可以通过运行 git log 命令来查看提交历史并找到提交 A 的哈希值。

开启交互式 rebase 模式

git rebase -i <A-hash>^

这里 <A-hash> 是提交 A 的哈希值。^ 符号表示该提交的前一个提交。

Squash 合并

将你希望合并的每个提交行前面的 pick 改为 squashs。第一行(最早的提交)应保留为 pick

# 根据rebase -i 提交目标hash值打开编辑界面
git rebase -i 71c24d47b2f68d0465c3e3defa48311c3d592036

# 接着会弹出如下界面  s -- squash ,被合并的提交 pick 改为s(squash)
pick 5c079ff120 fix
s 316e094548 fix status log
s a79cbdc0f3 脱手重复key问题修复
s df8650aa3f [feat] add hmi
s ff74bd1bf1 [feat] add curise speed
s 08bf230667 [fix] cruise_speed_limit
s 71c24d47b2 [feat]: 15s hod
s 26f7d3f83d Updated mff_aeb_config.json

保存并关闭编辑器。

Git 默认使用的编辑器可能是 Vim, Nano 或者其他的,这取决于你的系统配置。

这里以 Vim 和 Nano 为例说明如何保存并退出:

Vim :

        1、在 Vim 中,按 Esc 进入命令模式

        2、输入 :wq (意思是 write and quit,即保存并退出),然后按 Enter

Nano:

        1、按 Ctrl+O 来保存文件(你会在底部看到提示 "File Name to Write")

        2、然后,按 Enter 确认文件名

        3、最后,按 Ctrl+X 退出编辑器

设置默认编辑器:

        git config --global core.editor vim

如果你选择了任何提交进行压缩,Git 将再次打开一个编辑器,让你修改新的合并提交消息。这将是所有被挑选和压缩提交的提交消息的组合。

git squash,git

在这里,你可以整理你的提交消息,删除不需要的部分或者添加更多的细节。

保存并关闭编辑器会创建新的合并提交。

推送到远端

现在,你可以用以下命令强制推送你的更改到远程存储库:

git push origin feature --force

就这样,你已经成功地将分支 feature 的三个提交压缩为一个了!文章来源地址https://www.toymoban.com/news/detail-763890.html

到了这里,关于GIt Squash 多个提交压缩提交的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Git提交单个或者多个文件

    Git提交指定文件步骤 1.git status //查看修改的所有内容(或者git status -s) 2.git add ’ ’,例如:(git add components/pages/holders/xxx.vue) //’ \\\'引号中间放上文件名,执行上一步后,会显示文件名跟目录 //多个文件用空格分开 3.git stash -u -k //忽略其他文件,很重要的一步!!!! 4.gi

    2024年02月01日
    浏览(49)
  • git rebase 合并多个提交

    开发过程中,本地通常会有无数次 commit ,可以合并相同功能的多个 commit,以保持历史的简洁。 命令使用 说明: -i(–interactive):弹出交互式的界面进行编辑合并 [commitid]:要合并多个版本之前的版本号,注意:[commitid] 本身不参与合并 例如,如下例子中你想合并前 5 个

    2024年02月07日
    浏览(35)
  • Git仓库实现:一次性提交多个文件

    首先是建立服务器与仓库的连接,不会操作的小伙伴可以看这一篇文章,链接: Git仓库 保姆级教程 选择文件夹,使用git clone上传的仓库,点击进去 输入命令行: git commit -m \\\" \\\" ,双引号一般填入描述或者版本信息,但是若要提交多个文件,则写入 \\\"add more files\\\" 有问题欢迎随时

    2024年02月12日
    浏览(69)
  • git一套代码关联多个远程仓库(一行提交到两个仓库)

    因公司开发了自己的软件代码管理仓库项目,所以需要把之前在git上的项目代码同步到\\\"软件工厂\\\"的仓库中,但是也还没有完全弃用原来的git仓库,而且git 也用习惯了,所以我就考虑将代码提交的时候一次提交到两个远程仓库中。 通过该命令查看现有代码关联的仓库情况 通

    2024年02月05日
    浏览(69)
  • 修改Git已经提交的一个或多个注释的步骤及注意事项

    git已经提交到远程仓库,想要修改注释内容可以按照以下步骤进行: 1、到本地仓库目录下打开git 控制窗口(Git Bash),注意自己要改注释的分支是否正确,可以使用: $git checkout 分支名,切换到自己要改的分支,比如我从V1.1的分支切换到V1.0分支。 2、使用命令:$ git rebase -

    2024年02月14日
    浏览(50)
  • git cherry-pick命令(合并单个或多个提交记录到当前分支)

    Git cherr-pick:选择性合并提交 在项目中,我们常常需要选择性的把某个提交或某些提交单独的合并到当前分支,Git 提供了一个称为 cherry-pick 的命令来执行这个操作。 1、要在当前分支上合并某个提交,可以使用以下命令: git cherry-pick commit-hash 其中, 是要合并的提交的哈希值

    2024年02月04日
    浏览(63)
  • 【git】git怎么提交代码,提交代码的2种方法

    git add file name: 将工作区的“新建/修改”添加至暂存区 git commit -m \\\"提交日志\\\" file name:文件从暂存区到本地库 git remote add origin http://xxxxxx/xxxxx.git git push -u origin master 第一步:同步远程仓库代码:git pull git add / git commit代码之前首先git pull,需先从服务器上面拉取代码,以防覆

    2024年02月11日
    浏览(52)
  • Git文件管理:Git提交

    提交 是 Git 的核心概念之一,用于在特定时间创建存储库的快照。它可以帮助您捕获当前的项目存储库。git commit命令可以为您提供 git 存储库的历史记录,直到进行此提交或创建快照为止。我们可以在提交中包含一条消息或描述,详细说明该提交的目的。提交还包含大量元数

    2024年02月04日
    浏览(33)
  • idea的git工具提交代码无法提交上去,git的代码检查

    在idea工具点击提交代码,进度条过了几秒钟后,又恢复到未提交状态,代码提交不上去。 由于此java文件是代码工具生成的,里面有3万行代码,而idea的git工具默认有打开代码检查Analyze Code,导致代码检查不通过,或者超时。 1. 点击这个小齿轮。  2. 把这个Analyze Code 关掉。

    2024年02月11日
    浏览(73)
  • [GIT] GIT拆分仓库--不丢git提交历史记录

    如果你的代码仓库里有多个目录,你想把其中一个目录拆分出去变成一个独立的代码仓库。重要的一点是拆分的过程中要保留git提交历史记录。 进入根目录后,快速运行 ls 终端命令以确保列出所有子目录。 利用命令 git log 或 git log --onelist |wc  查看你的提交的信息和提交了多

    2024年02月09日
    浏览(83)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包