MonoRepos中是否有使用版本标记的标准?符合1.0.0-myapp12.1.0-myapp2的内容可以接受吗?或者有其他方法来区分应用程序之间的版本吗?

最佳答案

tags被组织在目录和文件中(所有git引用都是,运行tree .git/refs/tags来查看),因此我建议命名标记:

myapp1/1.0.0
myapp1/1.0.1
 ...
myapp2/2.1.0
myapp2/2.2.0
 ...

这将把每个应用程序的版本组合在一起,一些命令将“自然地”处理数字:
# list tags, sorted by version number :
$ git tag --list --sort="version:refname"
myapp1/1.0.2
myapp1/1.0.10
myapp1/2.0.0
myapp1/10.0.0
myapp2/1.0.0
myapp2/2.0.0
myapp2/11.0.0

如果要避免在检查myapp1的日志时显示“tags for myapp2”,可以使用--decorate-refs=<pattern>
# this will include tags starting with 'myapp1', and all branches :
$ git log --oneline --graph --decorate-refs=refs/tags/myapp1 --decorate-refs=refs/heads

关于git - Monorepo版本标签约定,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47316073/

10-13 08:43