2015-09-11 4 views
3

Я хотел бы добавить копию удаленной ветви (origin/featureX) в мой локальный репозиторий.Как показать соединения между локальными и удаленными ветвями в git?

Поэтому я создал местный филиал featureX и установить его для отслеживания данного удаленного филиала:

git branch featureX 
git branch -u origin/featureX featureX 
# Branch featureX set up to track remote branch featureX from origin. 

Теперь есть способ, чтобы показать эту связь? Я попытался, например. git branch -av, но нет связи между featureX и remotes/origin/featureX.

ответ

7

Вы должны быть более подробными git branch -vv, это documented, но не очевиден.

-v
-vv
--verbose
Когда в режиме списка, шоу-SHA1 и совершают подчиненную линию для каждой головки, а также отношение к потоку ветви (если таковые имеются). Если вы даете дважды, напечатайте имя ветви вверх по течению, а также (см. Также удаленное шоу git).

1

Вместо git branch, попробуйте git checkout featureX.
Поскольку есть ветвь origin/featureX, эта локальная ветка будет автоматически связана с удаленным отслеживанием.

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

git branch -d featureX 
git checkout featureX 

От git checkout:

Если <branch> не найден, но там существует ветвь отслеживания в точности один удаленный (назовем его <remote>) с соответствующим названием, обрабатывать как эквивалент

$ git checkout -b <branch> --track <remote>/<branch> 
+0

Спасибо, ... использование 'git checkout' действительно имеет смысл. – Edward

+1

@Edward да, в этом случае вы знаете, что ваша локальная ветка начинается с правильной фиксации ('origin/featureX') – VonC

4

Чтобы увидеть связь легко удвоить -v вариант:

$ git branch -v 
* master b9a3e01 [ahead 3] 
$ git branch -vv 
* master b9a3e01 [origin/master: ahead 3] 

VonC's answer Посмотреть на более удобный способ, чтобы получить эти вещи начали, в большинстве случаев.

Смежные вопросы