Come eliminare i commit da un ramo Git

Come eliminare i commit da un ramo Git

In questo post, vedremo come eliminare i commit da un ramo Git.,et

L’idea è per forza ripristinare la directory di lavoro per rimuovere tutti i commit che vengono dopo che il specificato commit e poi fare una forza di spinta:

1
git reset –hard

Si può fare riferimento a un commit attraverso la sua discendenza, o usando a pieno hash SHA-1, o con il parziale di hash che dovrebbe essere di almeno 4 caratteri e inequivocabile.,

1
2
3
4

# Scartare i primi 4 commit
git reset –TESTA dura~4

Se questi invii sono presenti nel repository remoto, è necessario per forza di spingere l’hard reset al repository 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., Per evitarlo, riponi prima le tue modifiche locali chiamando il comandogit-stash che a sua volta ripristina anche la directory di lavoro alla revisione HEAD dopo aver salvato le tue modifiche locali. git reset --hard HEAD viene spesso utilizzato per eliminare tutte le modifiche non committed per abbinare il commit più recente nella directory di lavoro.

Nel caso in cui si desideri mantenere il proprio lavoro e annullare solo il commit, è possibile utilizzare l’opzione --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., Crea un nuovo commit che annulla tutte le modifiche apportate nel commit specificato, quindi lo applica al ramo corrente.,iv id=”e6e72cc751″>

1
2
3
4
5
6
7

# Revert the commit 87859b5
git revert 87859b5
# Push to remote
git push

Here’s a live example:

Interactive Rebasing

Another plausible way of removing comments is using git-rebase command.,

1
git rebase-i

Esecuzione di comando di cui sopra si aprirà un editor con tutti i commit nel ramo attuale, che vengono dopo che il specificato commit. Per eliminare un commit, è sufficiente sostituire il comando ‘pick’ con ‘drop’ e chiudere l’editor. Puoi anche semplicemente eliminare la riga corrispondente.,

Il seguente comando rimuoverà un intero commit e78d8b1 in una volta usando --rebase-merges con --onto opzione.,

1
git rebase -r –onto e78d8b1^ e78d8b1

(20 votes, average: 5.,00 su 5)

Grazie per la lettura.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *