2015-02-11 13 views
7

Così sto usando TortoiseSVN per provare a unire il mio ultimo tronco in ramo-B. Recentemente il trunk aveva un ramo-A reintegrato che conteneva la ridenominazione di una sottocartella e alcune revisioni ai file all'interno di tale sottocartella. Branch-B contiene anche alcune revisioni diverse per quei file all'interno di quella sottocartella, che ha ancora il nome originale.conflitto svn albero fusione cartella rinominata

Ora, quando si tenta di unire il tronco più recente nel ramo-B, svn aggiunge semplicemente la cartella appena nominata e genera un conflitto ad albero nella cartella con nome originario. In altre parole, le revisioni ai file stessi non vengono mai unite e sono rimasto con entrambe le cartelle. Ho provato più cose nella speranza di ottenere l'unione più pulita possibile, pur mantenendo tutto lo svn appropriato: mergeinfo, ma niente sembra funzionare.

Qualcuno conosce il modo corretto per completare questa unione in modo pulito?

TortoiseSVN 1.8.10, 1.8.11 Subversion

Ecco un visiva:

/trunk (before reintegrating branch-A) 
    /Folder1 
    file1 
    file2 
    file3 

/trunk (after reintegrating branch-A) 
    /Folder1-Renamed 
    file1-change1 
    file2-change1 
    file3 

/branch-B 
    /Folder1 
    file1-change2 
    file2-change2 
    file3 

tl; dr: Come faccio a modo pulito unire il tronco in ramo-B? Grazie!

+0

Versione client? – bahrep

+0

Ah scusa. TortoiseSVN 1.8.10, Subversion 1.8.11. @bahrep – plwalsh88

risposta

7

Non c'è davvero il pulito modo per risolvere i conflitti strutturali dell'albero come questo in Subversion. In sostanza, quello che dovete fare è la seguente:

  • merge trunk in branch-B di lavoro copia
  • manualmente creare un diff delle modifiche file1 e file2 in branch-B e applicarle ai file corrispondenti nel recentemente fuse Folder1-Renamed directory
  • eliminare la directory ormai obsoleto Folder1
  • assicurarsi che tutto funziona ancora
  • accettare lo stato attuale come quella corretta (vedi anche http://svnbook.red-bean.com/nightly/en/svn.tour.treeconflicts.html)
  • commettere

Ci dispiace ma non ottiene più facile di quella con svn. Sono un grande fan dell'uso di Subversion per certi tipi di setup di squadra, ma l'incubo dei conflitti tra alberi (e dei loro meccanismi di risoluzione arcani e soggetti a errori) regolarmente ci fa venir voglia di piangere (e passare a git per sempre).

+0

sembra che questa procedura abbia funzionato. Grazie per averlo scritto per me! – plwalsh88

Problemi correlati