【发布时间】:2020-02-22 10:35:26
【问题描述】:
我需要在我的 git 存储库中有版本文件。
当我们决定发布时,我有手动触发的发布流程(管道),这个流程应该这样做:
- 克隆回购
- 运行测试
- 计算新版本
- 用新版本更新版本文件
- 提交并推送新版本文件
- 使用新版本在 git 中创建标签/分支
现在,当我从这个标签进行克隆时,版本文件应该包含正确的版本。
如果在测试运行时 (#2) 其他人提交了对 repo 的更改,会发生什么情况,在 #6 中生成的标签是否还会包含在发布过程中未测试的更改?
这个流程的逻辑是否正确,或者我有更好的方法来管理版本文件?
【问题讨论】:
-
否;如果其他人推送已提交的更改,则来自 CI 的提交不再与远程共享历史记录,并且推送将失败。
-
你可能想要使用像 gitversion 这样的工具来根据标签和提交历史计算你的版本:gitversion.readthedocs.io/en/latest
标签: git version gitversion