Eu fiz o seguinte dei um git rebase main na nova-funcionalidade e depois dei um git rebase nova-funcionalidade na branch main
depois dei o git push das duas branch.
Isso estaria errado ou não?
Eu fiz o seguinte dei um git rebase main na nova-funcionalidade e depois dei um git rebase nova-funcionalidade na branch main
depois dei o git push das duas branch.
Isso estaria errado ou não?
Oi, Levi, tudo bem?
Você fez uma pergunta interessante sobre o uso do git rebase. Vamos analisar o que você fez:
Você estava na branch nova-funcionalidade e executou git rebase main. Isso significa que você pegou os commits da main e os aplicou antes dos commits da nova-funcionalidade. Até aqui, tudo bem, pois isso garante que sua nova-funcionalidade está atualizada com as últimas mudanças da main.
Depois, você foi para a branch main e executou git rebase nova-funcionalidade. Isso reescreveu a história da main para incluir os commits da nova-funcionalidade antes dos commits da main.
Ao final, você fez git push das duas branches. Aqui está o ponto crucial: quando você faz um rebase, você está reescrevendo a história dos commits, o que pode causar problemas se outras pessoas estiverem trabalhando nas mesmas branches e já tiverem puxado os commits antigos. Nesse caso, é mais seguro fazer um merge:
# Na branch nova-funcionalidade
git rebase main
# Voltar para a main
git checkout main
# Fazer o merge da nova-funcionalidade na main
git merge nova-funcionalidade
# Push das mudanças
git push origin main
Dessa forma, você evita reescrever a história da main e mantém um histórico mais limpo e compreensível para todos os colaboradores.