我对 Git 真的很陌生(我们正在使用 TortiseGit),但这是我的问题。我有 3 个环境:开发、质量保证和生产。客户要求进行两项更改,因此我在 Dev 中进行了两项更改,提交并推送到 QA 环境。现在,该公司希望一个更改立即进入生产,而下一个更改等待另一个系统的更改。如何仅将部分提交推送到 Prod?
Sha*_*rly 10
我使用 TortoiseGit 2.8 来分割 master 分支上的提交。步骤有很多,但流程确实不错:
提交本身是原子的,所以它们不能被拆分或分解。但是,由于提交只是更改的集合,我们可以拆分这些更改,然后创建单独的提交,其中只包含您希望对每个更改进行的更改。
这样做的一种方法是在您想要拆分的提交之前对提交进行软重置,然后暂存每组更改并分别提交。
如果你在分解之前已经推送了你的提交。您需要进行强制推送,因为您要用分解的提交替换旧提交,因此请确保在进行任何更改之前进行拉取。
同意 PeeHaa,您可能希望为每个环境创建不同的分支,然后您可以随意挑选所需的提交。