Как сменить pu sh на другой пульт после того, как отправил их в исходное положение (вверх по течению)? - PullRequest
1 голос
/ 03 марта 2020

Я использую Git интеграцию Visual Studio с pu sh мои изменения в https://dev.azure.com. Сегодня я создал репозиторий GitHub и добавил свои основные изменения в качестве удаленного для репозитория GitHub с помощью этих команд из папки Visual Studio Git root:

git remote add upstream https://github.com/user/repo
git push upstream master

Теперь у меня есть копия всех моих изменений в GitHub. Когда я делаю новые изменения в Visual Studio и помещаю их sh в https://dev.azure.com, я бы хотел, чтобы их тоже отправили в GitHub. Я слышал о Git крючках. Поэтому я написал это в сценарии post-receive:

#!/bin/sh
git push upstream master
exit 0

Но когда я отправил свои изменения из Visual Studio, репозиторий GitHub не обновился, поэтому мне пришлось сделать git push upstream master вручную.

Что я делаю не так?

Ответы [ 2 ]

1 голос
/ 04 марта 2020

Чтобы ответить на мой собственный вопрос, я нашел эту статью , в которой четко объясняется, как добавить пульты для одновременного нажатия (одной командой git push).

Короче говоря, вы можете настроить несколько пультов для одновременного нажатия:

git remote add all first_remote_url
git remote set-url --add --push all first_remote_url
git remote set-url --add --push all second_remote_url

Вот и все! Теперь вы можете подключить sh к обоим пультам с помощью следующей команды:

git push all

БОНУС : хотя вы не можете использовать несколько репозиториев, вы можете делать это для получения информации со всех удаленные репо:

git fetch --all
1 голос
/ 03 марта 2020

A post-receive ловушка - это ловушка на стороне сервера, что означает, что имеет смысл установить ее только на удаленном устройстве, что в этом случае, скорее всего, невозможно. См., Например, здесь или здесь .

Один из способов добиться того, чего вы хотите, - использовать вместо этого pre-push hook. В этом случае, когда вы набираете pu sh to Azure, сценарий сначала запускается (до pu sh), и попытка pu sh будет выполняться только в том случае, если сценарий завершает работу со статусом 0 (т. Е. Завершается успешно). ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...