Псевдоним ветка для последнего выпуска в Git - PullRequest
5 голосов
/ 16 февраля 2012

У нас довольно распространенный рабочий процесс Git, как описано в этой статье . Теперь на нашем сервере сборки мы хотим составить планы сборки для development , master и для последнего выпуска . Проблема в том, что ветка последнего выпуска имеет разные имена во времени (* release - **).

Как можно решить эту проблему? Можно ли создать псевдоним с постоянным именем lastrelease , который может использоваться сервером сборки? Что-нибудь еще?

Ответы [ 2 ]

2 голосов
/ 16 февраля 2012

Если вы получили естественное правило упорядочения для имени тегов release- *, вы можете перечислить их и выбрать последнее.

Например, это может быть достигнуто следующим образом:

git tag -l release-* | sort -V

-l опция тега git - выводить список тегов, соответствующих предоставленному шаблону.

sort -V - это специальная опция числовой сортировки, предназначенная для вашего случая

Если вы хотите выбрать последний, просто добавьте хвост -1:

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

Если вы хотите получить последний выпуск Subversion (например, релизы 1.x), это довольно просто:

git tag -l release-1.* | sort -V | tail -1
1 голос
/ 16 февраля 2012

Можно создать ссылки, указывающие на другие ссылки, с помощью команды git symbolic-ref.

Тем не менее, это не обязательно предполагаемое поведение: Какое рекомендуемое использование символьной ссылки Git?

Ваш другой вариант может иметь HEAD вашегомастер-репозиторий Git в вашей последней ветке release-, а затем сборка сервера сборки HEAD, develop и master.

Третьим вариантом будет просто иметь release-latestветвь и используйте ловушку пост-получения, чтобы обновлять ее всякий раз, когда обновляется текущая ветка release-.

...