git Monorepo版本标签约定

kokeuurv  于 2023-05-21  发布在  Git
关注(0)|答案(1)|浏览(121)

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

u3r8eeie

u3r8eeie1#

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”,你可以使用git log--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 config alias.logmyapp1 log --decorate-...

相关问题