Alias para rebase
Resolver conflitos durante um rebase é um processo que pode ser bastante repetitivo, por isso, normalmente utilizo estes dois alias no .gitconfig para ajudar:
[alias]
next = "!git add . && git rebase --continue"
conflict = "!f() { git ls-files --unmerged | cut -f2 | sort -u ; }; mate `f`"
O "mate" ali no final é para abrir os arquivos em conflito no TextMate, substitua pelo seu editor favorito. Então minha rotina de rebase fica assim:
1. Sincronizando o master
[rogerio] ~/projects/spikes/post_rebase (master)
$ git pull
2. Iniciando rebase
[rogerio] ~/projects/spikes/post_rebase (feature_xpto)
$ git rebase master
4. Conflitos: utilizar o alias para abrir simultaneamente todos os conflitos no seu editor favorito
[rogerio] ~/projects/spikes/post_rebase ((babd371...)|REBASE)
$ git conflict
4. Após resolver os conflitos, aplicar o patch e continuar
[rogerio] ~/projects/spikes/post_rebase ((babd371...)|REBASE)
$ git next
Também é possível configurar o Git para utilizar alguma ferramenta visual para resolução de conflitos, como o DiffMerge, Kdiff3 ou Meld, mas eu pessoalmente prefiro o jeito old school mesmo. Mais informações aqui.
No commentsNo comments yet. Be the first.
Leave a reply