Eu crio uma nova ramificação no Git:
git branch my_branch
Empurre-o:
git push origin my_branch
Agora digamos que alguém fez algumas alterações no servidor e eu quero retirar origin/my_branch
. Eu faço:
git pull
Mas eu entendo:
You asked me to pull without telling me which branch you
want to merge with, and 'branch.my_branch.merge' in
your configuration file does not tell me, either. Please
specify which branch you want to use on the command line and
try again (e.g. 'git pull <repository> <refspec>').
See git-pull(1) for details.
If you often merge with the same branch, you may want to
use something like the following in your configuration file:
[branch "my_branch"]
remote = <nickname>
merge = <remote-ref>
[remote "<nickname>"]
url = <url>
fetch = <refspec>
See git-config(1) for details.
Aprendi que posso fazê-lo funcionar com:
git branch --set-upstream my_branch origin/my_branch
Mas por que preciso fazer isso para cada ramo que eu criar? Não é óbvio que, se eu my_branch
entrar origin/my_branch
, eu gostaria de origin/my_branch
entrar my_branch
? Como posso tornar esse comportamento padrão?
--set-upstream
opção está obsoleta. Você deve usar --track
ou em --set-upstream-to
vez disso.
--set-upstream
for descontinuado, talvez os devs git devam removê-lo da mensagem de ajuda que é exibida quando você executa git push
sem opções e sem o montante configurado.
git branch --set-upstream
está obsoleto. git push --set-upstream
não é.
branch.autosetupmerge
significa que a configuração upstream para uma nova ramificação é definida automaticamente somente ao criar uma ramificação a partir de uma ramificação de rastreamento remoto (por exemplo<remote-name>/<branch-name>
) (consulte git-config (1) ). Você provavelmente está criando suas ramificações a partir de ramificações locais existentes. Se você estiver efetivamente ramificando diretamente da ponta de uma ramificação remota (apesar de estar em uma ramificação local), poderá usargit branch my_branch <remote-name>/<branch-name>
para definir automaticamente a configuração upstream.