在日常开发中,将多个零散提交整合后再应用到其他分支,能让代码管理更清晰高效。借助 SourceTree 的提交合并功能,可将多次提交 “打包” 为一个,随后轻松通过 cherry pick 应用到目标分支。以下是详细操作步骤:
一、定位起始合并位置
找到需要合并的一系列提交中,最靠前那次提交的上一个提交(即所有待合并提交的共同 “祖先”),右键点击该提交,选择 “变基” 选项,为后续的提交合并做好准备。
二、选定截止提交并启动合并
在提交列表中,选中所有待合并提交里最后面的那个提交,然后点击操作栏中的【用此前的 squash】按钮。这一步的作用是指定合并范围的终点,系统会自动将该提交与之前的待合并提交纳入合并范围。
三、批量合并目标提交
如果需要合并的提交数量较多,可重复点击【用此前的 squash】按钮,每次点击都会将当前选中提交的前一个待合并提交纳入合并队列。操作过程中,能直观看到这些提交逐渐被聚合为一个整体。
四、重新编辑提交信息
由于原始的多次提交信息可能零散、不规范,此时可以重新编辑合并后的提交信息。建议将信息修改为能完整描述这一系列提交所实现功能或解决问题的内容,使其更符合团队的提交规范,方便后续代码追溯。
五、确认合并操作
完成提交信息的编辑后,点击确认按钮,SourceTree 会按照设定执行合并操作。此时,多次零散的提交已成功合并为一个独立的提交。
六、查看结果并应用到其他分支
合并完成后,在提交列表中可以看到原本的多个提交已变为一个。此时,建议先执行 pull 操作,确保本地代码与远程仓库同步,随后就能方便地将这个合并后的提交通过 cherry pick 功能应用到其他需要的分支了。
总结
通过上述步骤,利用 SourceTree 的 squash 合并功能,能快速将多次提交整合,不仅简化了提交历史,还让跨分支的 cherry pick 操作更加高效。这一方法尤其适合在功能开发完成后,需要将相关提交统一应用到测试分支或生产分支的场景,有助于提升团队的代码管理效率。