Сначала клонируйте удаленный Git репозиторий и cd в него:
$ git clone git://example.com/myproject
$ cd myproject
Далее, посмотрите на локальные ветки в вашем хранилище:
$ git branch
* master
Но в вашем хранилище скрываются другие ветки! Вы можете увидеть их, используя флаг -a
:
$ git branch -a
* master
remotes/origin/HEAD
remotes/origin/master
remotes/origin/v1.0-stable
remotes/origin/experimental
Если вы просто хотите быстро взглянуть на вышестоящую ветку, вы можете проверить это непосредственно:
$ git checkout origin/experimental
Но если вы хотите работать с этой веткой, вам нужно создать локальную ветвь отслеживания, которая выполняется автоматически:
$ git checkout experimental
и вы увидите
Branch experimental set up to track remote branch experimental from origin.
Switched to a new branch 'experimental'
Эта последняя строка бросает некоторых людей: "Новая ветвь" - а?
На самом деле это означает, что ветка берется из индекса и создается для вас локально. предыдущая строка на самом деле более информативна, поскольку сообщает, что ветка настраивается для отслеживания удаленной ветки, что обычно означает ветку origin / branch_name
Теперь, если вы посмотрите на свои местные филиалы, вот что вы увидите:
$ git branch
* experimental
master
Вы можете отслеживать несколько удаленных репозиториев, используя git remote
.
$ git remote add win32 git://example.com/users/joe/myproject-win32-port
$ git branch -a
* master
remotes/origin/HEAD
remotes/origin/master
remotes/origin/v1.0-stable
remotes/origin/experimental
remotes/win32/master
remotes/win32/new-widgets
В этот момент все становится довольно сумасшедшим, поэтому наберите gitk
, чтобы увидеть, что происходит:
$ gitk --all &