2010-08-25 13 views

risposta

17

Non è possibile unire due copie di lavoro separate, ma ci sono alcune cose che si possono fare.

Se le modifiche vengono apportate ai file esistenti, il modo più semplice è creare una patch con svn diff e quindi applicare tale patch all'altra copia di lavoro. Per esempio. nella prima copia di lavoro che fate:

svn diff > patch 

E poi lo si applica nell'altro:

patch -p0 < patch 

E come al solito si desidera eseguire patch con l'opzione --dry-run per assicurarsi che funzioni prima .

Tuttavia se i rami non hanno lo stesso layout di file, non si può semplicemente prendere una patch e applicarla. In questo caso, è sufficiente eseguire prima le altre modifiche locali e quindi utilizzare svn merge come al solito

+0

'patch' è anche un comando svn? Sembra che non sia installato sul mio computer Windows. – Mot

+0

No, patch è solo uno strumento generico per l'applicazione di file di patch. È possibile scaricarlo per Windows qui: http://gnuwin32.sourceforge.net/packages/patch.htm –

+4

È possibile eseguire la patch dal menu di scelta rapida TortoiseSVN se si utilizza TortoiseSVN. –

1

Se le modifiche includono le eliminazioni, l'uso della patch GNU non lo taglierà. Se si desidera che le modifiche vengano eseguite su entrambi i rami, inserirli in uno, quindi svn unire tali modifiche all'altro ramo. Se hai fatto le modifiche nel ramo A e ne hai bisogno nel ramo B, svn cambia il ramo Una copia funzionante nel ramo B.

Problemi correlati