2013-12-14 6 views
0

Everytime Я нажимаю новое изменение/ветвь Геррит:Настройка отслеживания автоматически, при использовании Герритом

git push origin HEAD:refs/for/82-blah 

и тянуть все обратно (с git pull) Я всегда получаю комментарий сообщение, говорящее:

There is no tracking information for the current branch. 
Please specify which branch you want to merge with. 
See git-pull(1) for details 

    git pull <remote> <branch> 

If you wish to set tracking information for this branch you can do so with: 

    git branch --set-upstream-to=<remote>/<branch> 82-blah 

I не помню, чтобы видеть одно и то же сообщение, когда вы переходите к репозиториям без Gerrit Git. Разве это не что-то конкретное Gerrit или я что-то упускаю?

Есть ли способ избежать этого сообщения (крючок?), Так что я не должен был бы сделать:

git branch --set-upstream-to=origin/82-blah 82-blah 

перед каждым потянет?

ответ

1

это не Геррит специфичны. Информация отслеживания может быть найдена в файле конфигурации репо - .git/config. Местный филиал является дистанционным слежением, если есть информация слияния добавляется к конкретной секции филиала:

[branch "82-blah"] 
    remote = origin 
    merge = refs/heads/82-blah 

Так что я думаю, что эта информация отсутствует в вашей конфигурации. Как вы создали локальную ветку, которая является вопросом. если с git checkout -b <branch>, то в эту локальную ветку не будет информации о отслеживании. Лучше использовать git checkout -b <branch> origin/<branch> или git checkout <branch>. С помощью этих команд информация по отслеживанию будет добавлена ​​по умолчанию. (с --no-track switvh его можно пропустить). вы можете определить информацию отслеживания в любое время с помощью git config <branch>.remote origin and git config <branch>.merge refs/heads/<branch>.

+0

Благодарим вас за ответ. Вы написали, что это не Геррит. Интересно. У меня есть еще один удаленный элемент, добавленный в мое локальное репо, называемое «charon», просто простой Git, не-Gerrit remote. Я создал новую ветку, как обычно (без дополнительных переключателей, которые вы предоставили), тогда я сделал git push charon - all', а затем «git pull charon 82-blah», и я получил «уже обновленный» без каких-либо о настройке восходящих потоков и т. д. – trejder

+0

какой конфигурационный параметр у вас есть на пульте дистанционного управления? возможно, существует правило common/wildcard для восходящего потока. – HiB

+0

Мои ремиты 'charon' (Git) и' origin' (Gerrit) отличаются только URL-адресами, а второй имеет дополнительный 'push = HEAD: refs/for/master' и' fetch = + refs/notes/*: refs/notes/* 'для Gerrit. Кажется, ничего необычного. Но я новичок в Git/Gerrit, поэтому мне может не хватать чего-то очевидного. – trejder

1

Вы можете установить на входе в первый или в каких-либо последующих толчков, так что вам не придется повторять его впоследствии:

git checkout 82-blah 
git push origin -u 
Смежные вопросы