Git中最后一个版本的Alias分支



我们有相当常见的Git工作流,如本文所述。现在,在我们的构建服务器上,我们想为开发上一版本制定构建计划。问题是最后一个发布分支在时间上有不同的名称(*release-**)。

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

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

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

git tag -l release-* | sort -V

-git标记的l选项是列出与所提供的模式匹配的标记。

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

如果你想选择最后一个,只需附加尾部-1:

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

如果你想获得subversion的最后一个版本(例如1.x版本),这很容易:

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

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

然而,这不一定是有意的行为:;Git符号引用的推荐用法是什么?

您的另一个选择可能是让主Git存储库的HEAD指向最新的release-分支,然后让构建服务器构建HEADdevelopmaster

第三种选择是简单地拥有一个release-latest分支,并在更新当前release-分支时使用后接收挂钩来更新它。

最新更新