在Git中,术语squash用于将先前的提交压缩为一个。squash是将特定组的更改转发给他人之前的一项出色技术。您可以使用引人注目的交互式rebase命令将多个提交合并到单个提交中。
让我们了解如何压缩提交?
作为Git的负责任贡献者,有必要使协作过程高效且有意义。 Git以不同的方式提供了一些强大的协作工具。 Git squash是可促进高效且减轻痛苦协作的强大工具之一。
第一步:检查提交历史记录
要检查提交历史记录,请运行以下命令:
$ git log --oneline
给定的命令将在一行中显示历史记录。我们可以跟踪历史记录并选择我们要压缩的提交。考虑以下输出:
链接:https://www.learnfk.comhttps://www.learnfk.com/git/git-squash.html
来源:LearnFk无涯教程网
第2步:选择要压扁的提交。
假设我们要压缩最后的提交。要压缩提交,请运行以下命令:
$ git rebase -i HEAD ~3
上面的命令将打开您的默认文本编辑器,并将压缩最后三个提交。编辑器将打开,如下所示:
从上面的图像中,我们可以看到先前的提交显示在编辑器的顶部。如果要将它们合并为一个提交,则必须在编辑器顶部用 squash pick 替换 pick 。要在编辑器上书写,请按" i "按钮以插入模式进入。编辑文档后,按:wq 保存并退出编辑器。
第3步:更新提交
按下 enter 键后,将打开文本编辑器的新窗口以确认提交。我们可以在此屏幕上编辑提交消息。
我正在编辑我的第一个提交消息,因为它将是所有三个提交的组合。考虑下图:
上图是用于确认提交合并的编辑器屏幕。在这里,我们可以更新提交消息。要在此编辑器上进行编辑,请按" i "按钮进入插入模式,然后编辑所需的文本。按下:wq 键,以保存并退出编辑器。
当我们退出编辑器时,它将显示更新的描述。考虑以下输出:
上面的输出列出了对存储库所做的更改的描述。现在,提交已被压缩。在git日志的帮助下检查提交历史以进行确认。考虑以下输出:
第4步:推送压缩的提交
现在,我们可以将此压缩的提交推送到远程服务器上。要推送此压缩的提交,请运行以下命令:
$ git push origin master
要么
$ git push -f origin master
上面的命令将把更改推送到远程服务器上。我们可以在远程存储库中检查此提交。考虑下图:
从上图可以看到。新提交已添加到我的远程存储库。
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)