O Que É um Git Rebase?
Um rebase é uma operação git que move uma série de commits para um novo commit base, reproduzindo-os um a um em cima de outra branch. O resultado é um histórico linear sem o merge commit que um merge criaria. Ele é comumente usado para atualizar uma feature branch com a main mais recente antes do merge.
Por que isso importa
O rebase mantém o histórico limpo e linear, o que o torna mais fácil de ler e de fazer bisect. A ressalva é que ele reescreve os hashes de commit, então fazer rebase de branches que outros já puxaram causa conflitos. A regra geral é fazer rebase de trabalho local ou não compartilhado, não de branches compartilhadas já publicadas.
Conceitos relacionados
- Reescreve o histórico de commits, diferente do merge
- Squash merge é uma abordagem relacionada de organização de histórico
- Evite fazer rebase de branches compartilhadas já enviadas
Guias relacionados
What Is a Squash Merge?A squash merge combines all commits of a pull request into a single commit on the target branch, keeping main…
What Is a Feature Branch?A feature branch is a short-lived branch where a single feature or fix is developed in isolation before mergi…
What Is a Merge Queue?A merge queue serializes pull-request merges, testing each against the latest main, so the branch stays green…