Domanda

Sto cercando di riorganizzare un repository di sovversione 1.6 che ha rami. Sembra che se sposti un file nel trunk e quel file ha delle modifiche in un ramo, quando queste modifiche vengono unite nel ramo, non ci sono più.

Proverò a illustrare di seguito:

1. Repo before move
    trunk/a.txt
    trunk/b.txt
    branches/feature/a.txt
    branches/feature/b.txt

2. File branches/feature/b.txt is changed.

3. Repo reorganized
    trunk/a.txt
    trunk/new-location/b.txt
    branches/feature/a.txt
    branches/feature/b.txt

4. Changes from trunk merged to feature
    trunk/a.txt
    trunk/new-location/b.txt
    branches/feature/a.txt
    branches/feature/new-location/b.txt

La cartella branch / feature è una copia di trunk .

Al completamento del passaggio 4, tutte le modifiche al file b.txt dal ramo funzione non sono più presenti.

Pensavo fosse risolto in svn 1.5?

Se questa non è un'opzione, devo comunque riorganizzare in qualche modo il mio intero repertorio. Fare la mossa quando i rami sono stati tutti uniti nel tronco non è un'opzione. Ho sempre almeno 1 ramo più tronco alla volta.

È stato utile?

Soluzione

L'unione di file spostati è un problema noto . Tuttavia, Subversion ti avvisa con questo messaggio se non trova l'obiettivo di unione :

  

Target mancante saltato: "baz.c"

Se viene visualizzato questo messaggio, potrebbe essere necessario intraprendere un'azione manuale. Se il file è stato spostato e la nuova posizione deve ricevere le modifiche, puoi prendere in considerazione l'unione di sottostruttura tra le entità rinominate.

Non sono a conoscenza di alcun sistema di controllo versione che si fonde automaticamente. modifica : sembra in mercurial , ad esempio unisce do segui le copie .

Altri suggerimenti

Fornire dettagli sui passaggi 3 e 4. Le fusioni di sovversione non sono le stesse delle copie.

Dovrai assicurarti di utilizzare il metodo di ridenominazione SVN per il passaggio 3 per assicurarti che il percorso del file rimanga associato a future modifiche.

(sto estraendo questo da ... beh, non sono sicuro di quanto segue) Si è verificato un problema con gli antenati durante lo spostamento / la ridenominazione dei file. Assicurarsi che quando si unisce l'opzione ignora ancestry non sia selezionata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top