Как проверить удаленную ветку Git
Опубликовано: 2023-01-23
Если ваша команда разработчиков использует Git, вам в конечном итоге потребуется проверить чужую работу как ветку из удаленного репозитория. Как и большинство действий с ветками в Git, переключение на удаленную ветку на самом деле довольно просто.
Git, ветки и пульты
Поиск местных отделений
Проверка удаленной ветки
Обработка конфликтов имен
Работа с несколькими удаленными репозиториями
Перед оформлением заказа
Git, ветки и пульты
Философия Git заключается в частом ветвлении. Ветки позволяют вести разработку без изменения основного кода. Когда вы удовлетворены тем, что ваш новый проверенный код готов, вы объединяете новую ветку с другой веткой. Обычно это главная или главная ветка, но вы можете объединить любые две ветки.
Из-за этой гибкости, а также легкого и быстрого способа, с помощью которого Git обрабатывает ветки и слияния, ветвление было преобразовано. В старых системах контроля версий большое значение имело ветвление. Ветвление и слияние были медленными и подверженными ошибкам. Git предоставил разработчикам простое и быстрое ветвление, которое используется для поддержки множества различных рабочих процессов.
Если вы работаете или работаете волонтером в составе команды разработчиков, использующей Git, у вас будет «центральный» репозиторий Git, удаленный от компьютера каждого инженера-программиста. Это известно как удаленный репозиторий или просто «удаленный». Именно сюда отправляются коммиты и изменения в ваш локальный репозиторий, когда вы выполняете push.
Конечно, это то, что делают и другие разработчики. Это упрощает сотрудничество. Если вам нужно получить доступ к работе другого разработчика, вы просто получаете его код из ветки в удаленном репозитории. Если им потребуется доступ к вашей работе, они получат ваш код из ветки в репозитории, которая отслеживает одну из ваших локальных веток.
В Git проект разработки может иметь несколько пультов. Однако локальная ветвь может отслеживать только одну удаленную ветвь. Таким образом, пока вы работаете с соответствующим пультом, проверка удаленной ветки с несколькими пультами аналогична использованию одного пульта.
Поиск местных отделений
Вам нужно избегать конфликтов имен. Если у вас есть локальная ветка с тем же именем, что и удаленная ветка, которую вы собираетесь проверить, у вас есть два варианта. Вы можете переименовать свою локальную ветку и проверить удаленную ветку. Таким образом, ваша локальная ветка, которая отслеживает удаленную ветку, будет иметь то же имя, что и удаленная ветка. Или вы можете проверить удаленную ветку и указать Git создать локальную ветку отслеживания с новым именем.
Чтобы узнать имена веток в вашем локальном репозитории, используйте команду git branch
.
ветка git
Этот локальный репозиторий имеет основную ветку и три другие ветки. Звездочка указывает, какая ветвь является текущей. Переход от ветки к ветке требует проверки ветки, с которой вы хотите работать.
git checkout новая функция
статус git
Первая команда изменяет для нас ветку, так что «новая функция» является текущей веткой. Команда git status
проверяет это для нас.
Мы можем переключаться между ветвями, фиксируя новые изменения, извлекая обновления с удаленного сервера и отправляя локальные обновления на удаленный сервер.
СВЯЗАННЫЕ С: Как обновлять и поддерживать отдельные ветки Git
Проверка удаленной ветки
В удаленном репозитории есть ветка, которой нет на нашей машине. Разработчик по имени Мэри создала новую функцию. Мы хотим переключиться на эту удаленную ветку, чтобы мы могли собрать эту версию программного обеспечения локально.
Если мы выполним fetch
, Git извлечет метаданные из удаленного репозитория.
git fetch
Поскольку это первая fetch
, которую мы сделали с тех пор, как Мэри отправила свою ветку в удаленный репозиторий, нам сказали, что есть новая ветка под названием «origin/mary-feature». Имя по умолчанию для первого удаленного репозитория, добавленного в проект, — «origin».
Независимо от того, видим мы это сообщение или нет, мы всегда можем попросить Git перечислить ветки в удаленном репозитории.
Параметр -r
(удаленный) сообщает Git, что нужно сообщать о ветвях, которые находятся в удаленном репозитории.

ветка git -r
Здесь следует отметить, что Git проверяет свою локальную копию удаленных метаданных. Вот почему мы использовали команду git fetch
, чтобы убедиться, что локальная копия метаданных актуальна.
Как только мы обнаружим нужную ветку, мы можем продолжить и проверить ее. Мы используем команду git checkout
с параметром -b
(ветвь), за которым следует имя, которое мы будем использовать для локальной ветки, а затем имя удаленной ветки.
git checkout -b мэри-функция происхождение/мэри-функция
Мы видим, что мы проверили удаленную ветку и создали локальную ветку, которая будет отслеживать изменения в удаленной ветке.
ветка git
Наш новый локальный филиал теперь является нашим текущим рабочим филиалом.
Обработка конфликтов имен
Если у вас есть локальная ветка с тем же именем, что и у удаленной ветки, вы можете либо переименовать свою локальную ветку перед извлечением удаленной ветки, либо извлечь удаленную ветку и указать другое имя локальной ветки.
Чтобы перевести удаленную ветку в локальную ветку с другим именем, мы можем использовать ту же команду, которую мы использовали ранее, и выбрать новое имя локальной ветки.
git checkout -b mary-test origin/mary-feature
Это создает локальную ветку с именем «mary-test», которая будет отслеживать локальные коммиты в эту ветку. Пуши будут отправляться в удаленную ветку «origin/mary-feature».
Вероятно, это лучший способ справиться с конфликтами локальных имен. Если вы действительно хотите, чтобы имя локальной и удаленной ветки было одинаковым, вам нужно переименовать свою локальную ветку, прежде чем проверять удаленную. Переименование ветки в Git тривиально.
git ветка -m mary-feature старая-mary-ветка
Теперь вы можете проверить удаленную ветку «origin/mary-feature».
Работа с несколькими удаленными репозиториями
Если у вас настроено несколько удаленных репозиториев, вам нужно позаботиться о том, чтобы вы работали с соответствующим репозиторием при извлечении удаленной ветки.
Чтобы вывести список удаленных репозиториев, используйте remote
команду с параметром -v
(просмотр).
git удаленный -v
Чтобы увидеть все доступные ветки, нам нужно получить метаданные со всех наших пультов, а затем перечислить удаленные ветки.
git fetch --все
ветка git --все
Мы видим, что ветка, которую мы хотим, находится в удаленном «источнике». Команда для проверки находится в том же формате, который мы уже использовали. Нам нужно указать удаленное имя «origin», а также имя ветки «mary-feature».
git checkout -b мэри-функция происхождение/мэри-функция
СВЯЗАННЫЕ С: Как переключать, добавлять и удалять пульты Git
Перед оформлением заказа
Перед тем, как оформить заказ, имейте в виду несколько вещей, и все будет в порядке.
Убедитесь, что вы избегаете конфликтов имен. Если у вас есть локальная ветка с тем же именем, что и у удаленной ветки, решите, переименуете ли вы локальную ветку или создадите ветку с другим именем для отслеживания удаленной ветки.
Если вы используете несколько удаленных репозиториев, убедитесь, что вы используете правильный удаленный.
СВЯЗАННЫЕ: Git rebase: все, что вам нужно знать