Git中最新版本的别名分支

Git中最新版本的别名分支,git,version-control,build-automation,git-branch,Git,Version Control,Build Automation,Git Branch,我们有非常常见的Git工作流,如中所述。 现在,在我们的构建服务器上,我们希望为开发、掌握和上一版本的制定构建计划。问题是上一个发行版分支在时间上有不同的名称(*release-**) 解决这个问题的方法是什么?是否可以创建永久名称为lastrelease的别名,以供生成服务器使用?还有什么吗?可以通过git symbolic ref命令创建指向其他ref的ref 但是,这并不一定是预期行为: 您的另一个选择可能是在最新的发行版-分支上拥有主Git存储库的头部,然后让构建服务器构建头部,开发,以

我们有非常常见的Git工作流,如中所述。 现在,在我们的构建服务器上,我们希望为开发、掌握和上一版本的制定构建计划。问题是上一个发行版分支在时间上有不同的名称(*release-**)


解决这个问题的方法是什么?是否可以创建永久名称为lastrelease的别名,以供生成服务器使用?还有什么吗?

可以通过
git symbolic ref
命令创建指向其他ref的ref

但是,这并不一定是预期行为:

您的另一个选择可能是在最新的
发行版-
分支上拥有主Git存储库的
头部
,然后让构建服务器构建
头部
开发
,以及


第三种选择是简单地拥有一个
release-latest
分支,并在当前
release-
分支更新时使用post-receive钩子对其进行更新。

如果您的release-*标记名有一个自然的排序规则,您可以列出它们并选择最后一个

例如,这可以通过以下方式实现:

git tag -l release-* | sort -V
-git标记的l选项是列出与提供的模式匹配的标记

sort-V是为您的案例设计的特殊数字排序选项

如果要选择最后一个,只需附加tail-1:

git tag -l release-* | sort -V | tail -1
如果您想获得subversion的最后一个版本(例如1.x版本),这非常简单:

git tag -l release-1.* | sort -V | tail -1