Rebase
Rebase
é o processo de alterar o histórico de commits de um branch aplicando commits de outro branch. Em vez de usar merge
para combinar alterações, rebase
permite que você faça insert
novos commits no histórico de commits do branch atual sem criar commits de mesclagem.
Por exemplo, digamos que você tenha duas ramificações: feature-branch
e main
. Você está trabalhando feature-branch
e deseja aplicar os últimos commits de main
seu branch atual. Você pode usar o rebase para conseguir isso:
git checkout feature-branch
git rebase main
Quando você executa este comando, o Git pega os commits main
e os aplica em feature-branch
. Isso significa que todos os commits de feature-branch
aparecerão após os commits de main
. O resultado é um histórico de commits mais limpo e legível no feature-branch
.
No entanto, ao usar o rebase, é importante observar que a alteração do histórico de confirmação pode afetar as ramificações compartilhadas publicamente. Portanto, se você já enviou commits de seu branch atual para um repositório remoto, geralmente é aconselhável não usar rebase nesse branch para evitar conflitos e um histórico de commits confuso.
Branch
Trocando
A troca de ramificação no Git refere-se ao processo de mover de uma ramificação para outra. Quando você troca de ramificação, o Git move o ponteiro HEAD para a nova ramificação, permitindo que você trabalhe nessa ramificação e faça alterações sem afetar outras ramificações.
Por exemplo, digamos que você tenha branches feature-branch
e main
. Para mudar para feature-branch
, você usaria o seguinte comando:
git checkout feature-branch
Depois de alternar as ramificações, você pode fazer alterações no diretório de trabalho. Todos os comandos commit
, add
e checkout
serão aplicados ao branch atual.
Por exemplo, se você adicionar um novo arquivo e confirmá-lo em feature-branch
, somente essa ramificação conterá o commit, enquanto main
permanece inalterado. Isso permite que você desenvolva recursos separados, corrija bugs ou trabalhe em diferentes versões do código de forma independente. Você pode alternar entre as ramificações sempre que necessário para trabalhar em cada ramificação separadamente.