Spostare delle directory SVN in un nuovo repository: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 3: Line 3:
*Assicurarsi che tutti abbiano fatto commit e nessuno modifichi sino al termine del trasferimento.
*Assicurarsi che tutti abbiano fatto commit e nessuno modifichi sino al termine del trasferimento.


  cd C:\Program Files\Subversion\bin>
C:
  cd C:\Program Files\Subversion\bin


* Fare il dump del repository che contiene la directory
* Fare il dump del repository che contiene la directory
  svnadmin dump e:\svnrepos > c:\temp\svnrepos.dmp
  svnadmin dump E:\svn\repositories\old_repo > c:\temp\svnrepos.dmp


* Filtrare solo la directory che si vuole, eliminando le revisioni vuote e rinumerandole:
* Filtrare solo la directory che si vuole, eliminando le revisioni vuote e rinumerandole:
  type c:\temp\svnrepos.dmp | svndumpfilter --drop-empty-revs --renumber-revs  include check_amanda > c:\temp\nagios_plugins.dmp
  type c:\temp\svnrepos.dmp | svndumpfilter --drop-empty-revs --renumber-revs  include local-bin > c:\temp\local-bin.dmp


*Eliminare ogni occorrenza della directory:  
*Eliminare ogni occorrenza della directory:  
  vi c:\temp\nagios_plugins.dmp
  vi c:\temp\local-bin.dmp


  :%s/Node-copyfrom-path: check_amanda\//Node-copyfrom-path: /gc
  :%s/Node-copyfrom-path: local-bin\//Node-copyfrom-path: /gc
  :%s/Node-path: check_amanda\//Node-path: /gc
  :%s/Node-path: local-bin\//Node-path: /gc


*Eliminare la definizione della directory:
*Eliminare la definizione della directory:
  vi c:\temp\nagios_plugins.dmp
  vi c:\temp\local-bin.dmp


  Node-path: check_amanda
  :^Node-path: local-bin
Node-action: add
 
Node-kind: dir
Rimuovere:
Prop-content-length: 10
<pre>
Content-length: 10
Node-path: local-bin
Node-action: add
Node-kind: dir
Prop-content-length: 10
Content-length: 10
   
   
PROPS-END
PROPS-END
</pre>


* Creare nuovo repository
* Creare nuovo repository
  svnadmin create e:\svn\nagios_plugins
  svnadmin create e:\svn\repositories\local_bin


* Caricare il progetto:
* Caricare il progetto:
  svnadmin load e:\svn\nagios_plugins < c:\temp\nagios_plugins.dmp
  svnadmin load e:\svn\repositories\local_bin < c:\temp\local-bin.dmp


* Ora tutti devono cancellare la working copy e rifare il checkout.
* Ora tutti devono cancellare la working copy e rifare il checkout.

Revision as of 21:10, 13 January 2010

L'esempio è su un server Windows.

  • Assicurarsi che tutti abbiano fatto commit e nessuno modifichi sino al termine del trasferimento.
C:
cd C:\Program Files\Subversion\bin
  • Fare il dump del repository che contiene la directory
svnadmin dump E:\svn\repositories\old_repo > c:\temp\svnrepos.dmp
  • Filtrare solo la directory che si vuole, eliminando le revisioni vuote e rinumerandole:
type c:\temp\svnrepos.dmp | svndumpfilter --drop-empty-revs --renumber-revs  include local-bin > c:\temp\local-bin.dmp
  • Eliminare ogni occorrenza della directory:
vi c:\temp\local-bin.dmp
:%s/Node-copyfrom-path: local-bin\//Node-copyfrom-path: /gc
:%s/Node-path: local-bin\//Node-path: /gc
  • Eliminare la definizione della directory:
vi c:\temp\local-bin.dmp
:^Node-path: local-bin

Rimuovere:

Node-path: local-bin
Node-action: add
Node-kind: dir
Prop-content-length: 10
Content-length: 10
 
PROPS-END
  • Creare nuovo repository
svnadmin create e:\svn\repositories\local_bin
  • Caricare il progetto:
svnadmin load e:\svn\repositories\local_bin < c:\temp\local-bin.dmp
  • Ora tutti devono cancellare la working copy e rifare il checkout.

Riferimenti