2013-06-23 7 views
23

Sono davvero nuovo per git e controllo del codice sorgente.Ripristino di un commit precedente in Git per visual studio 2012

Utilizzo strumenti di Visual Studio per git con vs2012.

Sono in qualche commit e voglio tornare ad un commit precedente ma non riesco a farlo come. Quando vado ai dettagli del commit, il pulsante di ripristino sembra essere stato disattivato.

Sono rimasto bloccato su questo problema per le ultime 2 ore. Ho fatto ricerche su internet ma inutilmente. Per favore qualcuno può dirmi come ripristinare un commit precedente.

Grazie.

risposta

16

Bene a quei neofiti che hanno lo stesso problema, il modo migliore per non sprecare 3 ore della tua vita è semplicemente non usare lo strumento di Visual Studio per GIT. Almeno non nella sua forma attuale. (23 giu 2013)

Dopo aver perso molto tempo ho scoperto da un link oscuro che l'estensione vs supporta solo alcune delle funzioni GIT con reset non essendo uno di loro.

+1

Purtroppo, questa è la mia conclusione. Per ora, è meglio utilizzare "Git Source Control Provider" http://visualstudiogallery.msdn.microsoft.com/63a7e40d-4d71-4fbb-a23b-d262124b8f4c (che non è di Microsoft) –

+1

@Klas Mellbourn. Non è ancora perfetto, purtroppo. –

+1

La funzione dovrebbe esistere in VS per documento, ma non ho potuto farlo funzionare: http://msdn.microsoft.com/en-us/library/vstudio/dn237244.aspx#revert –

25

Non si desidera eseguire un'operazione di ripristino: il ripristino richiede solo un commit e lo annulla.

Se si vuole tornare a un precedente commettere - ci sono due opzioni:

Se si vuole andare in modo permanente indietro, fare un hard reset git, che rotola di nuovo il codice per un determinato commesso. È possibile farlo attraverso:

git reset --hard {commit number} 

Se si vuole andare momentaneamente indietro, you can create a branch from that commit. che essenzialmente si tenere percorso attuale nella storia codice e creare un altro percorso dal punto della storia in cui è stato commesso quel codice.

+11

Ho il sospetto che OP vuole fare il 'reset' attraverso la GUI di Visual Studio. Non riesco a trovare alcun modo per farlo neanche. –

+1

assolutamente corretto @KlasMellbourn –

+2

sì, e il modo migliore per usare git è tramite la riga di comando –

7

In Team Explorer -> Branches quindi selezionare Actions -> Open command prompt e utilizzare i comandi git o:

  • git checkout your commit id
  • git ripristinare your commit id

controllo questo fuori per capire la differenza What's the difference between "git reset" and "git checkout"?

Penso che lo farai anche tu per avere l'estensione git installata in Visual Studio, ce l'ho, ma non sono sicuro che sia obbligata a farlo.

enter image description here

25

Visual Studio 2015 Update 2 aggiunge il supporto per GIT "Reset", che è quello che probabilmente si vuole fare:

GIT Reset in Visual Studio 2015 Update 2

+1

Per essere chiari su questo, fare clic con il pulsante destro del commit su cui si desidera eseguire il rollback, non il commit che si desidera eliminare. Sono un noob del GIT e mi sono totalmente perso questo concetto. –