Ho un ramo argomento locale che sta monitorando un ramo remoto. Per amor di discussione, dicono le storie di commit simile a questa:Git: Ignora tutte le modifiche su un ramo locale divergente
A--B--C--O1--O2--O3 (origin/phobos)
\
L1--L2--L3 (phobos)
aver guardato la relativa commettere storie, io ora voglio scartare tutte le modifiche al phobos
filiale locale e farlo ritornare ad essere una diretta copia di origin/phobos
, in modo che la storia locale si presenta così:
A--B--C--O1--O2--O3 (phobos origin/phobos)
io davvero non voglio le modifiche locali al ramo phobos
, e io non voglio nessun fonde di presentarsi nel repository di origine successivamente. (Quindi, la fusione non è quello che ho in mente.)
Sembra che dovrebbe essere davvero facile, ma il mio google-fu mi ha fallito. Come faccio a fare questo?
Impressionante. Questo ha funzionato perfettamente. –
Un problema con questo approccio rispetto al ripristino della testa del ramo, è che l'eliminazione del ramo soffia via il reflog del ramo. Resettare il ramo, d'altra parte non solo conserva il reflog, ma in realtà registra il reset nel reflog. Ciò rende l'operazione facilmente reversibile in seguito, se necessario. –
@Electrons_Ahoy Suggerirei di cambiare la risposta accettata qui a quella di Dan (in modo che le persone come me che hanno cercato su Google come farlo scelgano probabilmente il metodo più sicuro). –