В настоящее время мы развертываем на dev-сервере через Git с перехватом после получения. Это сервер разработки, а не промежуточный сервер, поэтому мы хотели бы иметь возможность развертывать / просматривать несколько веток (а не просто ветку «dev» или что-то подобное).
Когда нажата новая ветка или фиксация, ловушка после получения успешно выполняет извлечение удаленного репо в любую ветвь, которая была нажата.
Наш типичный цикл может быть:
Просмотр новой ветки 1 на сервере разработчика - git push devserver branch1
Просмотр новой ветки 2 на сервере разработчика - git push devserver branch2
Снова посмотреть старое branch1 на сервере dev - git push devserver branch1
Однако, когда мы хотели бы оформить заказ на ветку, более старую, чем текущая активная, мы не можем сделать это git push devserver branch1
, потому что удаленный репозиторий отвечает «Все актуально», поскольку branch1
уже был перенесен тому назад. Очевидно, что ловушка после получения не запускается, поэтому есть ли другой способ выполнить удаленную проверку?
Я знаю, что могу подключиться по SSH к серверу разработчиков и таким образом оформить заказ на branch1
, но я бы хотел выполнить действие из моего локального репо, если это возможно. Я пробовал зацеплять pre-receive и update, но ни один из них не работает в этих условиях.
Любая помощь высоко ценится!