Respostas:
git branch --set-upstream <remote-branch>
define a ramificação remota padrão para a ramificação local atual.
Qualquer git pullcomando futuro (com a filial local atual com check-out)
tentará trazer confirmações da <remote-branch>filial local atual.
Uma maneira de evitar a digitação explícita --set-upstreamé usar o sinalizador abreviado da -useguinte maneira:
git push -u origin local-branch
Isso define a associação upstream para qualquer futura tentativa de push / pull automaticamente.
Para mais detalhes, confira esta explicação detalhada sobre ramificações e rastreamento upstream .
Para evitar confusão, as versões recentes de
gitdescontinuam essa--set-upstreamopção um tanto ambígua em favor de uma--set-upstream-toopção mais detalhada com sintaxe e comportamento idênticosgit branch --set-upstream-to <origin/remote-branch>
git push -u origin local-brancho que originrepresenta? Existe algum caso em que eu digite algo diferente de origindepois do -u?
originrefere-se ao repositório remoto do git que foi usado para clonar. Pode haver vários repositórios git remotos . Nesse caso, originpode ser substituído pelo nome apropriado do controle remoto desejado ao qual se deseja se referir.
git remote -vpara encontrar seus controles remotos, o padrão é originnormalmente
Quando você envia para um controle remoto e usa o --set-upstreamsinalizador, o git define o ramo para o qual você está empurrando como o ramo de rastreamento remoto do ramo que está sendo enviado.
Adicionando um meio de filiais de monitoramento remoto que git então sabe o que você quer fazer quando você git fetch, git pullou git pushno futuro. Ele pressupõe que você deseja manter a filial local e a filial remota que está rastreando em sincronia e faz o necessário para conseguir isso.
Você pode conseguir a mesma coisa com git branch --set-upstream-toou git checkout --track. Veja as páginas de ajuda do git sobre o rastreamento de ramos para obter mais informações.
git branch --set-upstream <<origin/branch>> oficialmente não é mais suportado e é substituído por git branch --set-upstream-to <<origin/branch>>
--set-upstream-toque foi introduzida devido às confusões (IIRC) na instalação a montante.