RE[2]: How to change tags "copy source"? - SOLUTION

Дмитрий Попов <[email protected]>
Newsgroups gmane.comp.version-control.subversion.cvs2svn.user
Message-ID <!&!AAAAAAAAAAAYAAAAAAAAALQZDlQhkq5CheoFWky9nfYChQAAEAAAAHV1GpxsDuZPtRXrAg1Nj4MBAAAAAA==@pharmanet.ru>
Brilliant idea!

Thank you muchly, Tino!

This solved my "problem" :)

My full solution (for archive):


1) change .options file (like help describes):

-----
import os
cvs_repo_main_dir = r'D:\Temp\cvs\products\ifc\src' #this folder contain "component" subfolders
projects = os.listdir(cvs_repo_main_dir)

# Exclude some 'trash'
projects.remove('CVS')
projects.remove('connect1Cdemo')
projects.remove('configDemo')

for project in projects:
    run_options.add_project(
      cvs_repo_main_dir + '\\' + project,
      trunk_path='trunk/' + project,
      branches_path='branches_old', # I decided to have all 'old' (CVS) branch tags at different folder
      tags_path='tags_old/' + project, # I decided to have 'old' tags at different path, and with subfolders (for each component), because I have ~2000 tags

# this are defaults
      initial_directories=[   ],
      symbol_transforms=[
         ReplaceSubstringsSymbolTransform('\\','/'),
         NormalizePathsSymbolTransform(),
      ],
      symbol_strategy_rules=[ ] + global_symbol_strategy_rules,
    )
-----

Also, don't forget to change other options (SVN repository/dump file location, etc)!

2) Run conversion

cvs2svn --options=my.options

3) After importing dump file to SVN (I set "--parent-dir /ifc"), I have this layout:

* ifc
** branches_old
*** componentA_branch_X_A
*** componentB_branch_X_A
*** ...
** tags_old
*** componentA
**** componentaA_tag_1_0_2
**** componentaA_tag_1_1_1
*** component
**** ...
** trunk
*** componentA
*** component

And 'show log' for any tag  shows only one operation 'copy', from '/ifc/trunk/componentName' to 'ifc/trunk_old/componentName/componentName_tag_X_Y_Z'


Dmitry

> From: Jamma Tino Schwarze
> Sent: Wednesday, December 15, 2010 4:19 PM
> 
> if I remember correctly, you could just treat your component as projects
> - just set the trunk path for "project" component1 to /trunk/component1 etc.
> You might need some ManualSymbolRules to specify target paths for
> conversion, but since the config file is actually Python, it's easily
> scriptable.

------------------------------------------------------
http://cvs2svn.tigris.org/ds/viewMessage.do?dsForumId=1670&dsMessageId=2691162

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.