Qual è il modo giusto per annullare una ridenominazione in git, come: rispostaUndo git mv (rinominare)
git mv file1 file2
Qual è il modo giusto per annullare una ridenominazione in git, come: rispostaUndo git mv (rinominare)
git mv file1 file2
non sfacciato:
git mv file2 file1
Dipende da cosa si vuole realizzare . Se si desidera che appaia come se il file non fosse mai stato spostato, è possibile reimpostare (o rebase) di nuovo prima dello spostamento. Se non ti importa della storia, allora spostala indietro.
Prima di tutto funziona bene fino a quando non hai premuto il commit, o qualcuno non ti ha tirato fuori. – CanSpice
Se si è rinominato accidentalmente un numero elevato di file e si desidera tornare al punto di partenza, eliminare tutti i file rinominati visualizzati come adds
in una chiamata git status
.
Dopo aver eliminato tutti i file modificati, è possibile eseguire git checkout -- *
per ripristinare localmente i nomi dei file originali.
Se avete fatto altre variazioni (che si desidera mantenere) dall'ultima commit, si può fare
git reset --hard
Non vorrei abituarmi ad usare 'git reset --hard'. Spostarlo all'indietro sembra un'opzione più sicura per me. – osa
ha funzionato per me. Volevo annullare un "git mv" che 1) non era stato ancora eseguito, e 2) Non avevo altri ganci –
Nel mio caso, ho spostato un'intera cartella, poi si rese conto che non avrei dovuto.
Mi è veramente piaciuta la risposta di @Dave Konopka, ma non ho avuto molto successo con questo approccio (forse la mia versione di GIT (1.8.4)? I miei file sono ancora mostrati come eliminati. Ho avuto altri cambiamenti nello stack che ho . non voleva perdere (purtroppo)
ho avuto successo facendo questo:
git reset moved_folder
git checkout original_folder
THANKS @ zedd45 !! –
git reset HEAD file2
git checkout -- file1
rm file2
Il primo comando disattiva file2 ma ne lascia una copia in giro. Il secondo comando ripristina il file originale e il terzo elimina il nuovo file.
Risposta sfacciata: 'git mv file2 file1' – CanSpice
@CanSpice: Questa è la risposta corretta; niente sfacciato a riguardo. –
@Charles: beh, l'ho fornito come risposta corretta e non sfacciata. :-) – CanSpice