У меня такое ощущение, что я использую неправильные слова или неправильно понимаю слова, которые я использую, что затрудняет поиск того, что я хочу сделать.
Прямо сейчас у меня есть Git репо с 3 ветками, размещенными на Azure Devops (очень похоже на Github / Gitlab / Bitbucket et c).
Мой текущий поток заключается в коммите и pu sh локально (с использованием PHP Storm) а затем войдите в систему Azure Devops и вручную используйте их пользовательский интерфейс для отправки запроса из моей ветки develop
в мою ветку staging
. Затем я захожу на сервер и git извлекаю из ветви staging
.
У меня есть три ветви: develop
, staging
и production
.
Но на моя локальная машина у меня только develop
, остальные существуют только на удаленном сервере. Я просто работаю в develop
и pu sh до origin/develop
, а затем делаю запрос на извлечение из develop
в staging
и затем production
, когда готов.
Я полагаю, что должно быть способ написать сценарий, чтобы сделать все это сразу и не нужно входить в систему Azure Devops или сервер.
Чтобы подвести мой вопрос настолько просто, насколько это возможно:
У меня в настоящее время есть для входа в систему Azure Devops и выполните следующие действия:
- Войдите в систему Azure Devops
- Нажмите ветви
- Нажмите "Новый запрос на извлечение" рядом с
staging
ответвление - Написать сообщение коммита (фактически помеченное как «заголовок»)
- Нажмите «Завершить»
- Нажмите «Завершить объединение»
Я бы хотел не заходить в Azure Devops и добиться этого через командную строку. Возможно ли это?
ОБНОВЛЕНИЕ
Я обнаружил, что в основном могу делать то, что я хочу, войдя на сервер и выполнив:
git pull
(это будет тянуть последнюю разработку, хотя я нахожусь в стадии подготовки git merge origin/develop
(это объединит развитие в постановку локально) git push
(это обновит дистанционную подготовку)
Это прекрасно работает, хотя одним недостатком является то, что, похоже, нет способа отследить, насколько далеко отстает staging
от develop
, что обеспечивается пользовательским интерфейсом azure devops.