Posso comunicare a Git di riutilizzare la risoluzione del conflitto da un commit unione esistente? Ho dovuto rerere disabilitato al momento del commit. Il nuovo commit di merge contiene alcuni commit aggiuntivi sul lato "nostro" dell'unione (ma non dovrebbero introdurre nuovi conflitti poiché hanno modificato un diverso set di file).Riutilizzo della risoluzione dei conflitti con Git
Per esempio, prendete il seguente DAG:
m [master] Add new stuff
*
| o [old-master] Merge branch A (conflicts)
|/a [branch A]
n *
* *
*/
*
Ora, quello che voglio fare è quello di portare commit m
e m^
nel ramo old-master
(e poi fare che il nuovo master). Non voglio semplicemente unire master
in old-master
, poiché creerà un nuovo commit di unione (anche se senza conflitti). Voglio ricreare commit o
con m
e a
come genitori.
Il nuovo DAG dovrebbe essere simile:
p [old-master] Merge branch A (same conflict resolution as old commit o)
/|
m | [master] Add new stuff
* |
| a [branch A]
n *
* *
*/
*
Non mi dispiace usando rerere, se posso dire che in seguito per registrare la risoluzione del merge esistente commit (o
).
@ jthill: Non penso che l'altra domanda cerchi di ottenere la stessa cosa. Non stanno rielaborando l'unione con i conflitti, stanno solo rifacendo un'unione che è venuta dopo (e non ha avuto conflitti). – knittl
Sì, ma voglio sostituire 'n' con un nuovo commit' n'' che include i nuovi commit ma ha la stessa risoluzione di conflitto ('o' e' p' nei miei DAG ASCII) – knittl
Scusa per il thrashing, I pagato per non avere un buon affare in anticipo leggendo male il mio codice. [E 'più chiaro ora cosa sta succedendo lì?] (Http://stackoverflow.com/a/21952372/1290731) Ma è sufficiente attivare la rerere e rifare la risoluzione precedente per questo è decisamente meglio se rerere è un'opzione. – jthill