Skip to content

Instantly share code, notes, and snippets.

@nataliagranato
Created September 18, 2024 15:30
Show Gist options
  • Save nataliagranato/56280d854dea31d1a7d7b9e08e0034ff to your computer and use it in GitHub Desktop.
Save nataliagranato/56280d854dea31d1a7d7b9e08e0034ff to your computer and use it in GitHub Desktop.
Resolvendo conflitos de Branchs rapidamente

Git Rebase e Push Forçado

Este documento explica como usar os comandos git pull origin --rebase main e git push -f quando você está em uma branch diferente da main.

Comandos

1. git pull origin --rebase main

Este comando é usado para atualizar a branch atual com as mudanças da branch main do repositório remoto (origin) e rebasear a branch atual em cima da main.

Passos:

  1. Puxar as mudanças da branch main do repositório remoto (origin):
    git pull origin main
  2. Rebasear a branch atual em cima da branch main:
    git rebase main

O comando combinado é:

git pull origin --rebase main

2. git push -f

Após rebasear a branch atual, o histórico de commits é reescrito. Para atualizar o repositório remoto com o novo histórico, é necessário forçar o push das mudanças.

Passos:

  1. Forçar o push das mudanças da branch atual para o repositório remoto:
    git push -f

Exemplo de Uso

Suponha que você está trabalhando em uma branch chamada feature-branch e deseja atualizar essa branch com as mudanças mais recentes da main e depois enviar essas mudanças para o repositório remoto.

  1. Rebasear a branch feature-branch em cima da main:

    git pull origin --rebase main
  2. Forçar o push das mudanças para o repositório remoto:

    git push -f

Aviso

Usar git push -f pode sobrescrever o histórico de commits no repositório remoto, o que pode afetar outros desenvolvedores que estão trabalhando na mesma branch. Use este comando com cautela e certifique-se de comunicar com sua equipe antes de forçar o push.

Conclusão

Os comandos git pull origin --rebase main e git push -f são ferramentas poderosas para manter sua branch atualizada com as mudanças da main e garantir um histórico de commits limpo e linear. No entanto, é importante usá-los com cuidado para evitar conflitos e problemas de colaboração.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment