2012-02-16 68 views
5

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

解决此问题的方法有哪些?是否有可能创建别名,可以使用永久名称lastrelease可供构建服务器使用?还要别的吗?

回答

1

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

然而,这并不一定预期的行为:What's the recommended usage of a Git symbolic reference?

你的其他选择可能是有你的主人Git仓库点HEAD在您的最新release-分支,然后有构建服务器构建HEADdevelop,和master

第三个选项是只需要一个release-latest分支,并使用post-receive钩子来更新它,只要当前的release-分支已更新。

2

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

举例来说,可以做到这一点是这样的:git的标签

git tag -l release-* | sort -V 

-l选项列出标签匹配提供的模式。

排序-V是专为你的情况

如果你想挑选最后一个只是追加尾-1一个特殊的数字排序选项:

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

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

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