Зависимости сборки TeamCity Build и выбирая правильную ветвь -- git поле с участием teamcity поле с участием teamcity-8.0 пол Связанный проблема

TeamCity build dependencies and choosing the correct branch


6
vote

проблема

русский

У меня есть один проект с тремя конфигурациями сборки:

  1. Интеграция
  2. Развертывать dev
  3. Развертывание релиза

Конфиги по сборке 2 и 3 зависят от 1 через снимок.

Есть 3 корня VCS:

  1. git - все (используется с конфигурацией сборки 1)
  2. git - разрабатывать (используется с конфигурацией сборки 2)
  3. git - master (используется с конфигурацией сборки 3)

Ветка по умолчанию и спецификации величины следующие:

<Сильные> Git - все

Филиал по умолчанию:

Разработка

Спецификация филиала:

+: ссылки / головы / (развиваются)
+: Refs / Heads / (Master)
+: Refs / Heads / (функция / )
+: Refs / Heads / (исправление /
)
+: Refs / Heads / (выпуск)
+: Refs / heads / (поддержка / *)

git - Разработка

Филиал по умолчанию:

Разработка

Спецификация филиала:

+: ссылки / головы / (развиваются)

<Сильные> Git - Master

Филиал по умолчанию:

Master

Спецификация филиала:

+: Refs / Heads / (Master)

Вот проблема ...

Когда я запускаю сборку для третьего конфигурации сборки, я хочу, чтобы зависимость проверялась на создание интеграции на главной ветке. Он не делает и всегда будет использовать ветку по умолчанию конфигурации сборки интеграции (в настоящее время разрабатывается).

Есть ли способ достичь того, что я хочу?

    .
  • есть единую интеграцию сборки конфигурации
  • имеют отдельный конфигурацию сборки, который зависит только для разработки обновлений филиала
  • У
  • есть отдельный конфигурация сборки, который зависит только от обновлений главной ветки

То, как я сделал это в прошлом, участвующем, используя несколько конечных точек CVS на одном конфигурации сборки, который также кажется неверным, и я хотел избежать этого, если это возможно.

Английский оригинал

I have a single project with three build configurations:

  1. Integration
  2. Deploy Dev
  3. Deploy Release

Build configs 2 and 3 are dependent on 1 via a snapshot.

There are 3 VCS roots:

  1. Git - All (used with build config 1)
  2. Git - Develop (used with build config 2)
  3. Git - Master (used with build config 3)

The default branch and branch specs are as follows:

Git - All

default branch:

develop

branch spec:

+:refs/heads/(develop)
+:refs/heads/(master)
+:refs/heads/(feature/)
+:refs/heads/(hotfix/
)
+:refs/heads/(release)
+:refs/heads/(support/*)

Git - Develop

default branch:

develop

branch spec:

+:refs/heads/(develop)

Git - Master

default branch:

master

branch spec:

+:refs/heads/(master)

Here is the problem...

When I run a build for the third build config, I want the dependency to check for integration builds on the master branch. It is not doing and will always use the default branch of the integration build config (currently develop).

Is there a way to achieve what I want?

  • Have a single integration build config
  • Have a separate build config that is dependent on only develop branch updates
  • Have a separate build config that is dependent on only master branch updates

The way I have done it in the past involved using multiple CVS end points on a single build config, which also seems wrong and I wanted to avoid that if possible.

</div
        
     
     

Список ответов

2
 
vote

Я бы предложил использовать переменную для филиала Spec и VCS Trigger. Это позволяет использовать Root VCS, пока до сих пор обеспечивая гибкость для выбора значений в каждой конфигурации сборки.

 

I would suggest using a variable for branch spec and VCS trigger. That allows you to reuse the VCS root, while still giving you the flexibility to choose the values in each build configuration.

</div
 
 
     
     

Связанный проблема

11  Почему "Git push helloworld + Master: Master" вместо просто "git push helvelorld"?  ( Why git push helloworld mastermaster instead of just git push helloworld ) 
Я пытался протолкнуть мою (первый в мире!) Git Reppo, как это изначально: <код> $ git push helloworld Но я получил эту спину: <код> To git-smichaels@f...

420  Как найти / Определить большие коммиты в истории Git?  ( How to find identify large commits in git history ) 
У меня есть 300 МБ Git Reppo. Общий размер моих текущих зарегистрированных файлов составляет 2 МБ, а общий размер остальной части REPO GIT составляет 298 МБ. ...

0  Зеркальные страницы GitHub из главного филиала - главная ветвь не обновляет  ( Mirroring github pages from master branch master branch not updating ) 
Я хотел отразить свой ветвь Github Pages, чтобы соответствовать главной ветви, чтобы всякий раз, когда я нажимаю origin master , gh-pages FINIVILE. Я сле...

8  Откатываясь в старую редацию в Mercurial (например, сброс Git)  ( Rolling back to an old revision in mercurial like git reset ) 
Использование git, я могу выбросить ошибку или случайные коммита, используя команду, как <код> git reset --soft HEAD^ Что сбрасывает текущую ветку (напр...

218  Попытка потянуть с ошибкой: не может открыть .git / fetch_head: разрешение запрещено  ( Trying to git pull with error cannot open git fetch head permission denied ) 
Помогите мне, пожалуйста, я пытаюсь запустить это в моем терминале: <код> asgard@asgard-A7N8X2-0:~/CollegePortal$ git pull error: cannot open .git/FETCH_HEA...

0  Digitalocean не обновляет должным образом  ( Digitalocean not updating properly ) 
У меня есть проект реагирования, который я загрузил в цифровой океан. У меня есть проблема, где я внес некоторые изменения в проект. Требуется ли Git Pull (см...

6  репо инициативный коммит  ( Repo init a particular commit ) 
IM Создание системы Cyanogenmod 9 (Android ICS) для телефона Nexus S (Samsung Crespo). Проблема в том, что если я сделаю: <код> repo init -u git://github.co...

1  GIT CLONE FAY INFO: разрешение запрещено (Publickey)  ( Git clone fail infopermission deniedpublickey ) 
Команда git клон git@github.com ********* не удалось с информацией: <код> Permission denied (publickey). fatal: Could not read from remote repository....

0  Git Merge или ребазу?  ( Git merge or rebase ) 
У меня есть проект, в котором мой главный ветвь опережает резервную ветку. Из-за некоторых вопросов в коде мы хотим использовать ветку резервного копирования ...

0  GitLab - не в состоянии нажать локальные ветви на удаленный  ( Gitlab not able to push local branches to remote ) 
У меня есть доступ для разработчика вправо для GitLab. Я не могу выполнять какую-либо «толкать» операцию для удаленного начала. Может ли создавать новую локал...

156  Git говорит, что удаленный REF не существует, когда я удаляю удаленную ветвь  ( Git says remote ref does not exist when i delete remote branch ) 
Я бежал <код> git branch -a <код> * master remotes/origin/test remotes/origin/master Я хочу удалить мою удаленную ветвь Я попробовал <код> git ...

102  Могу ли я удалить все локальные ветви, кроме текущего?  ( Can i delete all the local branches except the current one ) 
Я хочу удалить все ветви, которые получают перечисленные в выходе ... <код> $ git branch ... но держать текущую ветку, за один шаг . Это возможно? Если...

4  Чистый запуск SSHD HelpMSG 3534  ( Net start sshd helpmsg 3534 ) 
Я пытаюсь настроить git на коробке Windows и пока все, кажется, работает ... кроме этого: <Код> find_end6 Получает ошибку <код> find_end7 Когда я набрал...

0  Git и ручной интеграции типа проекта SCM с AWX  ( Git and manual scm project type integration with awx ) 
Когда люди работают, они пытаются сохранить свою историю свободными от совершения ошибок, то есть нежелательные версии кода, которые они знают, неисправен с с...

0  Git View / diff не работает в bug genie  ( Git view diff not working in bug genie ) 
Наш GIT Chayits показывает просто в боковой панели на билетах, но попытки просмотра / разных этих файлов собираются на 404. У кого есть какие-либо идеи, где я...