Простое тестирование настроек конфигурации филиала

Могу ли я легко протестировать из CLI, будет ли определенная ветвь соответствовать следующей конфигурации ветки в настройках Team City? Я предполагаю, что этот конфиг ветки на самом деле опирается на некоторые внутренние компоненты Git.

+:refs/heads/develop
+:refs/heads/xmas-lottery-hotfix-branch
+:refs/heads/hotfix*

Например, я хотел бы проверить, если hotfix/foo будет охватываться этим конфигом, или если мне нужно будет изменить его. Простая отправка пустых коммитов в различные ветки и проверка, запускает ли он сборку в TC, - это непростое и быстрое тестирование, хотя это тоже работает...

2 ответа

Решение

Приведенный выше конфиг напрямую ссылается на структуру файловой системы git. Если вы погрузитесь в .git папку вашего клонированного репо вы найдете refs папка, содержащая несколько каталогов и подкаталогов. Они соответствуют местным (в heads) и удаленные филиалы. Они могут также содержать другие специальные ветви (например, pulls на GitHub).

Чтобы проверить соответствие конфигурации одной или нескольким веткам, вы можете просто использовать обычные опции, предоставленные вам вашей оболочкой (здесь используется Bash в моем локальном репозитории Sinon):

echo sinon/.git/refs/*/*zam*
sinon/.git/refs/heads/zamnuts-restore-etters-1124 sinon/.git/refs/remotes/zamnuts

Это показывает, что спецификатор ветви refs/*/*zam* будет соответствовать этим двум ветвям (один локально извлеченный запрос извлечения и удаленный филиал). Это должно быть очень легко изменить в соответствии с вашими потребностями.

В этом меню будут перечислены все ветви, которые TeamCity обнаружил с помощью настроек конфигурации вашего филиала. Это обновляется каждый раз, когда корень VCS опрошен; каждые 60 секунд по умолчанию.

Другие вопросы по тегам