我的项目有两个主要分支 -master
用于 Web 应用程序的“生产”版本,以及用于应用程序X
的“测试”版本的分支。
我需要在这两个分支中保持与部署设置、数据库配置、Google Web Analytic ID 等相关的一些代码调整彼此分开,并防止它们git merge X
在 master 上发生或git merge master
在分支 X 上执行时被合并。
有没有一种可靠的方法可以做到这一点,即将一些提交标记为“仅用于这个分支”?
我的项目有两个主要分支 -master
用于 Web 应用程序的“生产”版本,以及用于应用程序X
的“测试”版本的分支。
我需要在这两个分支中保持与部署设置、数据库配置、Google Web Analytic ID 等相关的一些代码调整彼此分开,并防止它们git merge X
在 master 上发生或git merge master
在分支 X 上执行时被合并。
有没有一种可靠的方法可以做到这一点,即将一些提交标记为“仅用于这个分支”?
Simple answer : not trivially.
Instead, you can either :
这并不理想,但我的一个项目中有类似的场景。我的解决方案是改为维护三个分支——master、devel 和 config。config 分支从 devel 上的某个点分支,并且仅包含配置内容(因此得名)。然后我可以按照你的指示在 master 和 devel 之间开发和合并,当我需要测试时,我使用 rebase 将 config 分支移到 devel 的尖端。
它有点麻烦,特别是如果你喜欢在开发中测试每个提交,而不是仅仅定期测试,但它至少是功能性的。