2012-09-21 10 views
11

Diversi comandi in precedenza avevo alcuni javascript che funzionano in un modo. Nel corso di diversi commit ora lo faccio funzionare in un altro modo. Vorrei vedere il file com'era diversi commit fa perché potrei voler usarne alcuni nel nuovo javascript. Tuttavia non voglio ripristinare il mio file corrente esattamente di cosa fosse. Voglio solo aprire letteralmente il vecchio file, dare un'occhiata e magari copiare e incollare del codice da esso nel nuovo file.GIT: Come eseguire il checkout di un file da un commit precedente senza sovrascrivere quello corrente?

Come si recupera una copia del file da un commit precedente senza sovrascrivere la versione più recente?

risposta

11

Basta reindirizzare l'output di git show in un file.

git show *SHA-of-old-commit*:*filename* > newfilename 

esempio:

git show 7c4eacc:main.cpp > main.cpp.old 
+0

Meraviglioso! Grazie mille. – MrMisterMan

+0

quando faccio questo ottengo un errore del tipo: 'fatale: Path 'main.cpp' esiste sul disco, ma non in '7c4eacc''. Qualche idea del perché? –

+0

@JPLew È necessario utilizzare il valore SHA del commit particolare. Qui 7c4eacc era solo un esempio. – thameera

Problemi correlati