27. Resetando o branch style
Metas
- Resetar o branch
style
para o ponto anterior ao primeiro merge.
01 Resetando o branch style
Vamos para o branch style
no ponto antes de darmos merge com o branch main
. Podemos redefinir uma branch para qualquer commit usando o comando reset
. Na verdade, isso faz com que o ponteiro do branch aponte para qualquer commit contido na árvore.
Aqui, queremos voltar no style
branch para um ponto anterior ao merge com o main
. Temos que encontrar o último commit antes do merge
Execute
git switch style
git log --graph
Resultado
$ git switch style
Already on 'style'
$ git log --graph
* 79ac6fa 2023-11-28 | Resolved merge conflict (HEAD -> style) [Alexander Shvets]
|\
| * 85c14e9 2023-11-28 | Added meta title (main) [Alexander Shvets]
* | a33deed 2023-11-28 | Merge branch 'main' into style [Alexander Shvets]
|\|
| * ee16740 2023-11-28 | Added README [Alexander Shvets]
* | 0ee0113 2023-11-28 | Renamed hello.html; moved style.css [Alexander Shvets]
* | 903eb1d 2023-11-28 | Included stylesheet into hello.html [Alexander Shvets]
* | 555372e 2023-11-28 | Added css stylesheet [Alexander Shvets]
|/
* 9288a33 2023-11-28 | Added copyright statement with email [Alexander Shvets]
* b7614c1 2023-11-28 | Added HTML header (tag: v1) [Alexander Shvets]
* 46afaff 2023-11-28 | Added standard HTML page tags (tag: v1-beta) [Alexander Shvets]
* 78433de 2023-11-28 | Added h1 tag [Alexander Shvets]
* 5836970 2023-11-28 | Initial commit [Alexander Shvets]
É um pouco difícil de ler, mas podemos perceber pelos dados que o commit "Renamed hello.html; moved style.css" foi o último no branch style
anterior ao merging. Vamos redefinir o ramo style
para esse commit. Para fazer referência a esse commit, usamos seu hash ou deduzimos que esse commit está 2 commits antes do HEAD
, ou HEAD~2
na notação do Git.
Execute
git reset --hard HEAD~2
Resultado
$ git reset --hard HEAD~2
HEAD is now at 0ee0113 Renamed hello.html; moved style.css
02 Cheque o branch
Agora, vamos verificar o registro da ramificação style
. Não deve haver commits de mesclagem no registro.
Execute
git log --graph
Resultado
$ git log --graph
* 0ee0113 2023-11-28 | Renamed hello.html; moved style.css (HEAD -> style) [Alexander Shvets]
* 903eb1d 2023-11-28 | Included stylesheet into hello.html [Alexander Shvets]
* 555372e 2023-11-28 | Added css stylesheet [Alexander Shvets]
* 9288a33 2023-11-28 | Added copyright statement with email [Alexander Shvets]
* b7614c1 2023-11-28 | Added HTML header (tag: v1) [Alexander Shvets]
* 46afaff 2023-11-28 | Added standard HTML page tags (tag: v1-beta) [Alexander Shvets]
* 78433de 2023-11-28 | Added h1 tag [Alexander Shvets]
* 5836970 2023-11-28 | Initial commit [Alexander Shvets]