Domanda

Come posso annullare tutti modifica apportata alla mia directory dopo l'ultima commit, tra cui l'eliminazione di file aggiunti, il ripristino dei file modificati, e l'aggiunta di file indietro cancellati?

È stato utile?

Soluzione

In primo luogo ripristinare le modifiche

git reset HEAD --hard

quindi pulire fuori tutto non tracciata. Se si desidera mantenere i file che non sono monitorati a causa di .gitignore, stare attenti con questo comando.

git clean -fd

Altri suggerimenti

  

Come posso annullare ogni cambio fatto per la mia directory dopo l'ultima commit, tra cui l'eliminazione di file aggiunti, il ripristino dei file modificati, e l'aggiunta di file cancellati?

  1. È possibile annullare le modifiche al cingolati di file con:

    git reset HEAD --hard
    
  2. È possibile rimuovere non tracciata i file con:

    git clean -f
    
  3. È possibile rimuovere non tracciata i file e le directory con:

    git clean -fd
    

    ma non è possibile annullare il cambiamento ai file non monitorate .

  4. È possibile rimuovere ignorata e non tracciata file e directory

    git clean -fdx
    

    ma non è possibile annullare il cambiamento di file ignorati .

È anche possibile impostare clean.requireForce a false:

git config --global --add clean.requireForce false

per evitare l'uso di -f (--force) quando si utilizza git clean.

Ci sono due comandi che funzioneranno in questa situazione,

root> git ripristinare --hard HEAD ~ 1

root> git push -f

Per ulteriori comandi git riferimento questo pagina

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top