2012-02-16 16 views

risposta

18
$ git reset --hard <another branch> 
$ git reset --soft [email protected]{1} 
$ git commit 

Il primo (hard) reset acquisisce il contenuto dell'altro ramo nella directory di lavoro. Il secondo reset (soft) riporta il puntatore di commit sulla punta del ramo originale, ma non modifica affatto i file nel proprio indice, lasciandoli così come erano nell'altro ramo. È quindi possibile eseguire il commit dello stato sopra l'ultimo commit del ramo corrente.

+0

Dopo il primo comando, il 2 ° comando non esegue alcuna operazione poiché è già stato modificato. Quello che ho fatto è usare 'git reset --soft origin/current-branch', che ha fatto quello che mi aspettavo. – Nick

+0

Scusa, si, per "ramo attuale" intendevo inserire nella tua domanda il ramo che avevi definito "il ramo attuale". :) L'ho modificato per usare solo "HEAD @ {1}", che avrà l'effetto giusto. – Amber

+0

Eccoci - grazie mille per aver condiviso il tuo xp w/us :) – Nick

Problemi correlati