Após o checkout de um novo branch remoto, por que pull diz que ele irá se fundir?

1

Eu tenho trabalhado em um repositório local sincronizado com um repositório do GitHub.

Recentemente, nosso repositório GitHub possui uma ramificação recém-criada release .

Localmente, primeiro executo git checkout release , o que parece ser bem-sucedido e diz:

Branch release set up to track remote branch release from origin.

Switched to a new branch 'release'

Ouvi dizer que quando release não existe localmente, git checkout release extrairá de uma ramificação também com o mesmo nome de release do repositório origin . Então, acho que executar git pull não é necessário. Mas para minha surpresa, quando eu corro git pull , isso me diz que

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.

Por que git pull me diz que vai mesclar? Qual é o motivo da fusão?

O que devo fazer então?

    
por Tim 17.05.2017 / 16:24

1 resposta

3

Uma mesclagem em git pull indica que as ramificações locais e remotas divergiram. Isso significa que há novos commits em ambas as filiais (local e remoto) desde a última vez que eles estiveram em sincronia.

Para integrar as novas confirmações remotas em sua ramificação local sem uma nova consolidação de mesclagem, elimine seu comando git atual e, em seguida, execute git merge --abort para abortar a mesclagem. Em seguida, execute git rebase origin/release para rebaixar seus commits locais em cima dos novos commits remotos.

git pull -r

evitará isso no futuro (instrui git pull a rebase em vez de mesclar).

    
por 17.05.2017 / 18:09

Tags