Versione corta:
Come passare dal grafico di sinistra a quello di destra. Inoltre, ho bisogno di cancellare manualmente i commit duplicati (root2, a ', b') o il GC li potenzierà ad un certo punto in futuro? Ripara cronologia git con commit duplicati
Versione lunga:
causa di un brutto CVS a git porta ho finito con due storie si alternano nello stesso repo quando ho importato branch_1 da CVS Quando il Maestro era stato già creato in git. Come si può vedere, ci sono commit di branch_1 che sono unici, ma ce ne sono altri che sono duplicati. Qual è il modo più semplice per risolvere questo problema?
Ho alcune idee ma non sono sicuro di come eseguirle. Uno sarebbe quello di rimuovere branch_1 del tutto e ricominciare, ma non so come far riconoscere git che root1
e root2
sono gli stessi in modo che tutte le patch vengano applicate sulla stessa linea. Un'altra idea sarebbe quella di rebase f, g, h su b e in qualche modo rimuovere root2, un ' e b'. Ma credo che, poiché non v'è alcun antenato comune, un rebase normale non funzionerà
In realtà, il duplicato impegna e impegna uniche del ramo sono centinaia in modo qualcosa di molto manuale non è buona
IIUC, il modo in cui rebases il lavoro è ripetendo il commit nella branca corrente dal ** ultimo antenato comune ** tra i due rami. Nel mio caso non esiste un antenato comune. Quindi o fallirà o metterà * root2 * come figlio di * b *. In entrambi i casi è sbagliato. Mi sto perdendo qualcosa? – Hilikus
@Hilikus, guarda 'man git-rebase' e grep per l'opzione' --onto'. – merlin2011
@Hilikus, ho citato le parti rilevanti del manuale. – merlin2011