questione connessa: Moving repository trunk to another’s branch (with history)SVN spostare singola directory in altri repository (con la storia)
So che si può scaricare un completo repository SVN con la storia e caricarla in un definito dall'utente (sub) directory del repository di destinazione utilizzando:
// in source repo
> svnadmin dump . > mydumpfilename
// in destination repo (backslashes because I'm using Windows)
> svnadmin load . < mydumpfilename --parent-dir some\sub\directory
Ma questo sarà importare il repository completo in sotto-directory del repository di destinazione. Quello che voglio è definire una sottodirectory nel repository sorgente che dovrebbe essere esportata. Qualcosa come svnadmin dump . --source-path old\sub\dir > mydumpfilename
.
Come posso ottenere quello? Se TortoiseSVN può farlo, si prega di dirlo;)
SOLUZIONE: Grazie alla risposta di Tim Henigan, ecco il modo corretto per farlo:
// execute in destination repo
svndumpfilter include source\sub\dir < mydumpfilename | svnadmin load . --parent-dir destination\sub\dir
Spero che questo aiuterà gli altri, anche ...
Penso che non sia possibile farlo, a parte copiare e applicare nuovamente ogni modifica, poiché le revisioni di subversion sono estese al repository, quindi spostare una singola directory con la cronologia non si applica in questo caso. Ad esempio, non i singoli file sono revisionati ma l'intero repository è revisionato e le differenze dell'intero repository sono memorizzate – Zenon
Ottima domanda, grazie. – richo
In realtà questa è solo metà della storia. Devi rimuovere anche la directory nel repository sorgente ricostruendola usando 'svndumpfilter exclude source \ sub \ dir', vedi http://stackoverflow.com/questions/205296/delete-file-contents-from- svn-history – Tino