Got un file che ha due commit di interesse, sia sul ramo Master
, sia solo modificando un singolo file foo
: un precedente commit AA
, e la versione corrente in HEAD
. Vorrei unire le due versioni del file, mantenendo i bit di entrambi, in HEAD
su Master
.Git: Unire vecchio impegnarsi nella versione corrente di testa
ho fatto la cosa più semplice che ho pensato che sarebbe lavorare:
git checkout -b merge-purgatory AA
git commit -m "pulled foo back from previous commit for merging into HEAD."
git checkout master
git merge merge-purgatory
che sovrascrive semplicemente la versione corrente di HEAD
foo
con AA
versione. Ho provato anche il più prolisso git checkout -m
, lo stesso risultato: una sovrascrittura stupida.
Come posso forzare git a trattare la versione AA
di foo
come unione in conflitto con la versione HEAD
corrente?
Quindi, in pratica, basta bypassare la conoscenza di git del commit precedente e utilizzare un unione/unsetet manuale. Speravo in un comportamento più cromatico da Git, ma è così semplice che l'ho usato con successo e ho fatto un po 'di pulizia in seguito. Grazie! – Noel