neste post, veremos como excluir commits de um branch Git.,et
A ideia aqui é forçar a reinicialização do diretório de trabalho para remover todos os compromete-se o que vem depois da data de confirmação e, em seguida, fazer um force push:
1
|
git reset –hard
|
Você pode referir-se a uma consolidação, através de sua ascendência, ou usar os seus hash SHA-1, ou pelo fornecimento parcial de hash, que deve ser de pelo menos 4 caracteres e inequívoca.,
1
2
3
4
|
# Descartar os primeiros 4 compromete-se
git reset –hard CABEÇA~4
|
Se aqueles compromete-se presentes no repositório remoto, você vai precisar de força de empurrar o hard reset para o repositório remoto.,
1
2
3
4
|
# Force Push updates to the remote repository
git push
|
Here’s a live example:
Note, that any changes made in the working directory since the last commit are silently discarded., Para evitar isso, o stash local as alterações chamando git-stash
comando que, por sua vez, também reverter o diretório de trabalho para o HEAD
revisão após salvar suas modificações locais. git reset --hard HEAD
é muitas vezes usado para remover todas as alterações por persistir para corresponder à persistência mais recente na pasta de trabalho.
No caso de você querer manter o seu trabalho e somente desfazer o commit, você pode usar a opção --soft
.,
1
|
git reset –soft
|
This is demonstrated below:
git revert
It is not a good idea to do a force push on a public or a shared repository; do a git-revert
instead., Ele cria um novo commit que anula todas as alterações feitas no commit especificado, em seguida, aplicá-lo ao ramo atual.,iv id=”e6e72cc751″>
Here’s a live example:
Interactive Rebasing
Another plausible way of removing comments is using git-rebase
command.,
1
|
git rebase -i
|
Executar comando acima irá abrir um editor com todos os compromete-se no seu ramo, o que vem depois da data de confirmação. Para largar um commit, basta substituir o comando ‘pick ‘ por’ drop ‘ e fechar o editor. Você também pode apenas apagar a linha correspondente.,
O seguinte comando irá remover toda a cometer e78d8b1
de uma só vez usando --rebase-merges
modo com --onto
opção.,
1
|
git rebase -r –onto e78d8b1^ e78d8b1
|
(20 votes, average: 5.,00 de 5)
Obrigado pela leitura.