在一个合理的"合并 - 只有主人" git workflow(例如gitflow) - 所有更改都发生在分支中,而这些更改又会合并(可能作为Pull Request的一部分) - 如何处理版本控制?
对于标记,我很容易git tag
特定的合并提交,没什么大不了的。
但是许多应用程序框架依赖于版本文件(例如package.json
或gemspec
甚至自定义文件)。
我看到了几个选项:
npm <anything>
运行package.json
),并且repo不再能够作为原子单元独立存在当版本控制在作为提交一部分的文件中时,是否有合理的标准方法来执行此操作?
答案 0 :(得分:1)
您可能会采用人类可能通过仅合并为主分支做出贡献的策略,并且只有自动CI / CD(例如Jenkins)可以直接在master中更改版本文件的内容。从CI / CD角度看,自动发布过程可能如下所示:
--force
,如果有人违反了主代码冻结)作为补充,您可以使用内容为.gitattributes
的ver文件目录中的verfile merge=ours
保护ver文件免受合并到主版本的更改(请参阅here)
答案 1 :(得分:1)
听起来好像是存储库中的模板版本文件,然后作为正常构建系统的一部分构建到实际版本文件中,并从存储库中提取信息。
我建议Autorevision将存储库中的版本信息转换为易于使用的形式。