Git 个基于模式的标签
Git tags based on a pattern
我们的存储库中有不同版本的标签。仅在假设该类型只出现一次的情况下,才需要获取特定的图案标签。
例如
v1.1.0
1.0
v1.0
v0.1.0-0.20201201002611-5424ca76ab3e
v1.2.0-alpha
如何获取仅遵循 v0.1.0-0.20201201002611-5424ca76ab3e 的特定内容
我有正则表达式
v[0-9]*.[0-9]*.[0-9]-0.\d{14}-\b[0-9a-f]{12}\b
我用 git describe --match "v[0-9]*.[0-9]*.[0-9]-0.\d{14}-\b[0-9a-f]{12}\b" --abbrev=0 --tags $(git rev-list --tags)
试过了,但似乎不起作用。我可以通过其他方式获得特定格式的标签吗?
您可以使用以下 POSIX BRE 模式:
'v[0-9]*\(\.[0-9]*\)\{2\}-0\.[0-9]\{14\}-[0-9a-f]\{12\}'
哪里
v
- 匹配 v
[0-9]*
- 零个或多个数字
\(\.[0-9]*\)\{2\}
- .
的两次重复和零个或多个数字
-0\.
- 0.
字符串
[0-9]\{14\}
- 十四位数字
-
- 一个连字符
[0-9a-f]\{12\}
- 十二位数字或小写字母。
我们的存储库中有不同版本的标签。仅在假设该类型只出现一次的情况下,才需要获取特定的图案标签。 例如
v1.1.0
1.0
v1.0
v0.1.0-0.20201201002611-5424ca76ab3e
v1.2.0-alpha
如何获取仅遵循 v0.1.0-0.20201201002611-5424ca76ab3e 的特定内容
我有正则表达式
v[0-9]*.[0-9]*.[0-9]-0.\d{14}-\b[0-9a-f]{12}\b
我用 git describe --match "v[0-9]*.[0-9]*.[0-9]-0.\d{14}-\b[0-9a-f]{12}\b" --abbrev=0 --tags $(git rev-list --tags)
试过了,但似乎不起作用。我可以通过其他方式获得特定格式的标签吗?
您可以使用以下 POSIX BRE 模式:
'v[0-9]*\(\.[0-9]*\)\{2\}-0\.[0-9]\{14\}-[0-9a-f]\{12\}'
哪里
v
- 匹配v
[0-9]*
- 零个或多个数字\(\.[0-9]*\)\{2\}
-.
的两次重复和零个或多个数字-0\.
-0.
字符串[0-9]\{14\}
- 十四位数字-
- 一个连字符[0-9a-f]\{12\}
- 十二位数字或小写字母。