在 Git 中合并和压缩
Abdul Jabbar
2023年1月30日
2021年12月25日
大多数时候,我们在特定的工作分支上工作时会遇到一种情况,我们必须从工作分支提交到主分支。但是我们已经为工作分支中发现的各种问题准备了许多提交。
本文将讨论如何使用 git 命令将许多工作提交合并和压缩为单个提交。借助 git 中的 squash 和 merge 命令,我们可以将所有所需请求的提交合并为一个提交并保留干净的历史记录。当它接受我们的合并请求时,压缩提交帮助我们清理我们想要的分支的提交历史。它将我们在合并请求中提到的所有更改作为单个提交放入,然后在为项目指定的合并方法的帮助下合并该提交。
假设我们有两个分支:
- 工作分支
master
用于合并的 Git Checkout 分支
为了压缩我们工作分支的所有提交并将它们合并到主分支,我们可以执行以下步骤:
我们必须使用以下 git checkout 命令从工作分支切换到 main
分支:
git checkout main
Git 中的合并和压缩分支
通过执行压缩,它将从工作分支获取我们所有的提交,并为工作分支的所有提交制作一个单一的压缩到主分支。如果我们遇到任何问题,我们可以使用以下命令手动解决它们:
git merge --squash feature
注意
上述命令不会进行合并提交。我们必须使用以下命令手动完成。
在 Git 中提交对分支的更改
现在使用组合消息提交合并的更改。
git commit -m <"add comment here">
如果你不想添加提交消息,可以跳过 -m
和注释部分,其中不会包含提交到分支的消息。
Author: Abdul Jabbar
Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.
LinkedIn