Как использовать git с несколькими удаленными репозиториями – CloudSavvy IT
git
может быть настроен для одновременной загрузки и извлечения из нескольких мест, что позволяет хранить код на двух разных платформах, сохраняя при этом только одну локальную копию. Вот как это сделать.
Объяснил, объяснил
«Удаленный» для ветви – это URL-адрес, с которого вы git
репо получает изменения. Ваш местный git
Репо полностью принадлежит вам – на него не влияет код других людей, пока они не передадут свои коммиты на удаленный компьютер. Надеюсь, вы все используете один и тот же пульт, и все синхронизируется, но этот пульт является лишь конечной точкой. Вы можете клонировать эту конечную точку и переключиться на новый пульт без особых проблем.
Всякий раз, когда вы клонируете новый репозиторий, пульт по умолчанию устанавливается как «источник». Вы можете найти пульты для любой данной git
репо, запустив:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
git remote -v
Это, вероятно, отобразит URL вашего основного репозитория на GitHub или любом другом сервисе, который вы используете. Если у вас есть несколько пультов, они тоже появятся здесь.
Но только потому, что origin
это пульт по умолчанию, это не значит, что вы ограничены одним. Зачем вам два пульта? Что ж, хороший пример использования AWS CodeCommit, Это хостинг git
репозиторий, и имеет множество интеграций со своей вычислительной платформой EC2, что позволяет автоматизировать развертывание кода на ваших серверах непосредственно из системы контроля версий.
Тем не менее, CodeCommit довольно неуклюжий по сравнению с более сфокусированным git
провайдеры, такие как GitHub, GitLab и BitBucket, и не имеют таких интеграций CI / CD, которые делают этих провайдеров великими. Таким образом, вы застряли с дилеммой – используйте CodeCommit по умолчанию git
решение или создайте свой автоматический конвейер развертывания кода самостоятельно.
Однако, с несколькими пультами, вы можете легко отправить код во второй репозиторий. Всякий раз, когда вы хотите обновить свои серверы, вы можете перенести изменения из вашего основного управления исходным кодом в CodeCommit, чтобы запустить конвейер развертывания.
Настройка нескольких пультов
С помощью git
этот способ на самом деле довольно прост. Вы добавляете пульты так же, как вы добавляете существующую папку, за исключением того, что вместо добавления «исходного» пульта вы даете ему другое имя.
git remote add
Затем, когда вы хотите передать на второй пульт, добавьте имя и ветку удаленного управления в вашу команду push:
git push second master
Или переключите пульт по умолчанию, используя --set-upstream
:
git push --set-upstream second master
Это самая простая настройка, однако она требует, чтобы вы передавали удаленное имя в качестве аргумента или каждый раз переключали его.
На самом деле, если вы используете две удаленные настройки, вам, вероятно, понадобится лучший способ управления передачей кода на второй пульт. Лучший способ справиться с этим в git
заключается в создании другой ветви для кода, отправляемого во второй восходящий поток, такого как развертывание в AWS CodeCommit.
Вы можете создать ветку с checkout -b
:
git checkout -b deployment
Затем добавьте удаленное развертывание:
git remote add deployment
и получите ветку master:
git fetch deployment master
Затем вы можете установить восходящий поток для текущей ветви, выполнив:
git branch --set-upstream-to=deployment/master
Вы можете повторить этот процесс для любого количества веток, что делает его отличным способом для отслеживания нескольких пультов. Помните, однако, что это только локальная настройка, поэтому, если вы отправите эту ветку в свой основной репозиторий, у других не будет копий ветки развертывания, настроенных для автоматического использования второго пульта.
Было бы идеально, если бы вторая ветвь была только односторонней, то есть вы только выдвигали код, а не извлекали новый код, иначе вы можете столкнуться с неожиданными конфликтами. Кроме этого, git
отлично работает с несколькими пультами.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)