È ancora ansible ripristinare i file non tracciati cancellati in git?

diciamo ieri ho apportato alcune modifiche al mio ramo principale, e ho dimenticato di aggiungere, impegnarli. e al mattino ho fatto

git reset --hard 

è ansible ripristinare i file cancellati in questa situazione?

Alcuni IDE migliori tengono traccia dei tuoi file come una cronologia locale. Se hai rimosso file esternamente (ad esempio, git reset ) dovresti essere in grado di fare clic sul tuo IDE nella directory principale e scegliere “Confronta con la cronologia locale”.

Ho usato questa funzione con successo in PHPStorm IDE quando i miei file non PHPStorm sono stati spazzati via da qualche utilità …

No ………………. Non lo è.

git reset --hard è un comando molto pericoloso, quindi fai attenzione quando lo usi la prossima volta 🙂

Se non hai alcun commit per questi file, sembra che tu non abbia alcuna possibilità di ripristinarli.

Altrimenti, il comando reflog può aiutarti.

( Nota : sembra che i passaggi siano leggermente cambiati, poiché la risposta accettata è stata pubblicata, ma l’idea rimane la stessa. )

Per aggiungere alla risposta accettata, sono stato in grado di recuperare i miei file cancellati usando Webstorm 2016.

  1. Per prima cosa, ho perso il mio file facendo una pulizia forzata usando git git clean -f .
  2. Per recuperarlo, sono andato in Webstorm e ho fatto i seguenti passi:

    • Vai alla scheda Progetto per il tuo progetto, fai clic con il pulsante destro del mouse per visualizzare “Mostra cronologia” in “Cronologia locale”. ( Come mostrato in questa immagine. )

    • Dopo aver fatto clic su “Mostra cronologia”, è ansible visualizzare il pop-up con “Modifica esterna -> Ripristina”. Fare clic per ripristinare i file desiderati sulla destra. ( Come mostrato nell’immagine allegata. )

    • Dopo i 2 passaggi precedenti, dovresti vedere il tuo file tornare nella scheda ‘Progetto’. Il pop-up “Cronologia locale” mostrerà qualcosa di simile in questa immagine allegata. Reverted to External Change Avrai un’opzione per farlo aggiungere a Git.

    • Per sganciarlo, basta fare un git reset HEAD dalla riga di comando.

Non è ansible accedere alla versione precedente dei file eliminati non tracciati da git, perché, di coruse, non esistono. Li recupererei da qualche backup (forse ci sono file di backup nascosti lasciati dall’ide / editor?), O, in alternativa, eviterei di lavorare troppo su quel filesystem e inizi a cercare strumenti di recupero.

git reset --hard non rimuoverà i file non tracciati. git clean will, comunque.

Tuttavia, se si git add i file git add , non git commit e quindi eseguire git reset --hard quei file andranno persi.

Ma va bene, in quanto possono essere recuperati, come mostrato in questa risposta . (Bene, fino alla prossima git gc ).