Bash 从git标记中获取最后一个标记--列出“v*”
我们有一个包含多个项目的回购协议,因此我们有多个不同的标签。例如,移动应用程序标签的格式为v1.1.0、v1.2.0,API标签的格式为API-1.1.0、API-1.1.0 我想设置一个bash脚本,从中获取特定项目最新创建的标记。现在我知道移动项目标签将始终是v.1.1.0 因此,我有一个bash脚本: git标记-列表“v*” 返回:v1.1.0 v1.2.0 但是,我不知道如何选择从该列表创建的最新标记,以便bash命令仅返回:v1.2.0您可以使用-sort=属性确保最新版本排在最后,然后使用tail仅提取最后一行:Bash 从git标记中获取最后一个标记--列出“v*”,bash,git,Bash,Git,我们有一个包含多个项目的回购协议,因此我们有多个不同的标签。例如,移动应用程序标签的格式为v1.1.0、v1.2.0,API标签的格式为API-1.1.0、API-1.1.0 我想设置一个bash脚本,从中获取特定项目最新创建的标记。现在我知道移动项目标签将始终是v.1.1.0 因此,我有一个bash脚本: git标记-列表“v*” 返回:v1.1.0 v1.2.0 但是,我不知道如何选择从该列表创建的最新标记,以便bash命令仅返回:v1.2.0您可以使用-sort=属性确保最新版本排在最后,
git tag --list --sort=version:refname 'v*' | tail -1
-sort=version:refname或-sort=v:refname简称将标记名视为版本,同时将其用作git tag-help中记录的排序键,这是避免默认字典排序顺序所必需的。使用awk:git tag-list'v*'| awk'{print$NF}