2013-10-09 13 views
10

Come posso applicare una patch con TortoiseSVN che inizialmente non riesce con uno o più hunk rifiutati?Applicare hunk non riuscito con TortoiseSVN

È possibile utilizzare TortoiseMerge per rivedere la patch/il risultato non riuscito e selezionare le linee che si desidera applicare?

In caso contrario, cosa devo fare dopo aver rilevato hunk non riusciti? la modifica dei file di patch a mano non sembra essere la soluzione perfetta (oltre a non saper "fissare" loro)

+0

Non sono sicuro che Git possa fare di meglio, ma con IIRC con Git si ottiene un file in conflitto che include indicatori di conflitto che è possibile risolvere. – knittl

risposta

3

Un modo mi viene in mente è:

  1. interruttore del (pulito) copia di lavoro alla revisione di base della patch
  2. applicare la patch
  3. impegnarsi per un ramo
  4. Passare al tronco o al ramo di lavoro, ovunque si desidera applicare la patch.
  5. Eseguire una tipica svn unione della revisione in (3) alla propria copia di lavoro.
2

Ho finito per utilizzare lo strumento di fusione incorporato di Visual Studio come descritto qui: Compare two files in Visual Studio 2012. Mi piace lo strumento diff di Visual Studio meglio di TortoiseSVN.

È ancora necessario un altro ramo/tronco per applicare la patch ma in questo modo non è necessario eseguire il commit prima.

  1. interruttore del (pulito) copia di lavoro alla revisione di base della patch
  2. Applicare la patch
  3. Utilizzare uno dei metodi descritti in quel link per confrontare i file.