我们使用gradle并将我们的版本号存储在gradle.properties中。 此外,我们使用“SNAPSHOTS”来识别开发中的构建。
创建新版本时,我们删除开发中的SNAPSHOT Postfix,创建一个Release Branch并将Version-Number增加到开发中的下一个SNAPSHOT版本。
此过程可在完成发布分支(将最新更改从发布分支合并到开发分支)时防止gradle.properties发生合并冲突。
但是现在我们遇到了问题,我们在从master创建修补程序分支并将它们合并到开放发布分支并开发时会出现合并冲突(或者更快的快速合并!)。
Maven Projects也出现同样的问题,其中版本号位于pom.xml中。
还有另一个好的解决方案来防止这个问题吗?我正考虑外化版本号并传递它,例如通过Build Parameter或将其存储在一个不受版本控制的文件中,但这有一个缺点,就是你无法从源代码中识别出版本。
任何帮助都会受到赞赏。
更新
另一个想法是,使用Branch- / Tagname来识别Release-Number。