2012-05-23 13 views
8

Sto usando github per mac, la GUI per git fornita da github e ho ripristinato un commit nella cronologia. Ho quindi deciso di volerlo ripristinare di nuovo, e ... per farla breve, ho un sacco di ripristini che non sono necessari e non voglio sincronizzarli con Github, ma sono automaticamente impegnati così l'unica opzione che ho è sincronizzare.Come disabilitare in github per mac?

Non c'è modo di ignorare queste modifiche?

+2

Se non siete troppo paura di riga di comando, provate 'ripristino git '. – Reactormonk

+0

Grazie, questo è quello che ho fatto in realtà ma sto cercando di vedere se c'è un modo per farlo tramite la GUI – GiH

risposta

5

Sembra che al momento non ci sia modo tramite la GUI ... Speriamo che i bravi ragazzi di Github lo vedano e lo considerino un suggerimento.

Per ora possiamo solo fare come suggerito da Tass nel commento sopra. git reset <commit you want to reset to>

3

Ecco alcune delle cose che si possono fare con la GitHub for Mac GUI:

A. destro dopo aver fatto un commit nel repository locale, ma prima della sincronizzazione, GitHub for Mac vi permetterà di annulla l'ultimo commit. Utilizza il pulsante "Annulla" nella parte inferiore del riquadro delle modifiche. Questo è quello che uso più spesso.

B. Dopo la sincronizzazione, è possibile ripristinare un commit dalla GUI come segue: selezionare il repository, quindi selezionare "Cronologia". Infine seleziona l'ultimo commit. Nella vista dettagliata (file diff) del commit in alto vedrai un'icona a forma di "impostazioni". È un menu a discesa con la voce "Ripristina questo commit". Vedi sotto. Nota che questo non rimuove il tuo commit, ma annulla efficacemente le modifiche introdotte dal tuo commit.

C. Se si seleziona un commit precedente (ad esempio precedente all'ultima), è possibile utilizzare lo stesso menu su "Ripristina su questo commit". Di nuovo, questo non rimuove i tuoi commit ma introduce modifiche che hanno l'effetto di annullarle.

Questo è ancora il meglio che può essere fatto tramite la GUI. Se in realtà vuoi rimuovere i tuoi precedenti commit dalla cronologia, devi comunque utilizzare la riga di comando: ad es. git rebase -i HEAD~2 ti permetterà di schiacciare i tuoi ultimi due commit in uno solo. Vedere the answers to this question per indicazioni.

D. Si noti che dopo aver schiacciato i commit dalla riga di comando, è possibile quindi utilizzare (A) per riaprire l'ultimo commit (cioè il risultato dello squash) dalla GUI.


enter image description here

Problemi correlati