Мы в настоящее время команда из 3 разработчиков, работающая в проекте, используя gitlab.comПолучить входящую ветвь от толчка в крюке Гита
У нас есть два сервера, один для производства и один для тестирования, как работающие на разных каплях ,
После того как мы закончили с нашими изменениями, мы помещаем на сервер тестирования, где мы имеем это Гит после приема крюка (это чистый репозиторий):
#!/bin/sh
git --work-tree=/var/www/domain.com --git-dir=/var/repo/site.git checkout -f
Мы используем ветку под названием «тестирование» (который проверяется на сервере тестирования), поэтому все работает нормально. После того, как все будет в порядке, мы объединим это в мастер, а затем подталкиваем к производству. Проблема здесь заключается в том, что иногда может возникнуть необходимость создания ветки для исправления ошибки в производстве, но мы не хотим загружать текущую работу в нашу тестовую ветку, и мы также хотим протестировать это исправление филиал на нашем тестовом сервере.
Именно поэтому я решил, что мы могли бы просто проверить входящую ветвь на тестовом сервере, чтобы каждый мог протестировать свой код на реальном сервере, не получив проверку на тестирование. Это можно сделать? Я попробовал googling git environment var для входящей ветки, которая сделала бы ее тривиальной оттуда, но не повезло. Я знаю, что мы все могли бы просто нажать и вручную проверить ветку на тестовом сервере, но это решение не привлекательно. Было бы более эффективно делать это с помощью git push и позволить серверу справляться с остальными!
Это, безусловно, не лучший способ для развертывания с использованием Git, поэтому я все уши для предложений!
Итак, вы хотите, чтобы серверы тестирования и производства имели ветвь исправления, но не выталкивали исправление с сервера тестирования на производство? –
@ Marina-MSFT да, но не только ветка исправления, но и любая ветка. Моя главная цель - видеть, что любая ветка на нашем единственном сервере тестирования делает только push. – user2430929