Извлечение локальной ветки из удаленной ветки автоматически создает так называемую «ветку отслеживания» (или иногда «восходящую ветку»). Отслеживающие ветви - это локальные ветви, которые имеют прямое отношение к удаленной ветви. Если вы находитесь в отслеживающей ветке и набираете git pull
, Git автоматически знает, с какого сервера нужно извлечь данные и в какую ветку объединить.
Когда вы клонируете репозиторий, он обычно автоматически создает master
ветка, которая отслеживает origin/master
. Однако вы можете настроить другие ветви отслеживания, если у вас есть sh - те, которые отслеживают ветви на других пультах или не отслеживают ветку master
. Простой случай - это пример, который вы только что видели, с git checkout -b [branch] [remotename]/[branch]
. Это достаточно распространенная операция, которая git обеспечивает сокращение --track
:
$ git checkout --track origin/BRANCH_NAME
С помощью --track
вы создаете локальную ветвь. От git версии зависит, нужно ли добавить --track
или нет (достаточно из Git 1.7.2.4 git checkout BRANCH_NAME
).
https://git-scm.com/book/en/v2/Git-Branching-Remote-Branches#_tracking_branches