SVN Settings: Repository Patterns
we have just a few SVN Repos but with many "Sub-Projects" each having its own "trunk/branches/tags" structure.
Now in the settings for each repo we have to use "Repository Patterns" so that RhodeCode can correctly identify all trunk/branches and tags structures.
We started with patterns like this, as this will work as expected:
/project1/trunk /project1/branches/* /project2/trunk /project2/branches/* /project3/trunk /project3/branches/* /project4/trunk /project4/branches/*
/project1/tags/* /project2/tags/* /project3/tags/* /project4/tags/*
As this is a lot of work with a high number of "Sub-"Projects (esp. as one can only set one line per request in the Web GUI), we hoped, that sth. like this will work, but it didn't:
With these patterns no structure was correctly identified.
So do we really have to add these 3 lines for each and every existing (and future) Sub-Project in the repo settings? Or is there another pattern syntax or API Calls to do this programmatically?
Thx in advance!
#2 Updated by Markus Leitold over 1 year ago
sure, I know... but what has this to do with my question? Perhaps I didn't make it clear enough: I'm speaking of ONE SVN Repository (or lets say 2 or 3 with different structures), which has a high Number of Projects each with its own SVN typical trunk/branches/tags structure like this:
SVNRepository1 -> Project1 ->trunk -> <folders and files> ->branches -> <folders and files> ->tags -> <folders and files> -> Project2 ->trunk -> <folders and files> ->branches -> <folders and files> ->tags -> <folders and files> -> Project3 ->trunk -> <folders and files> ->branches -> <folders and files> ->tags -> <folders and files> -> Project4 ->trunk -> <folders and files> ->branches -> <folders and files> ->tags -> <folders and files> -> ... -> ProjectN ->trunk -> <folders and files> ->branches -> <folders and files> ->tags -> <folders and files>
So there are multiple projects in one SVN Repository, NOT just one project with one trunk/branches/tags structure at root level (as the default pattern in RhodeCode assumes).
That means, it would make no difference if I set the patterns at the specific repository or globally... finally the latter would be wrong, if there is more than one repo with different structures. So I had to set the patterns for each project in this repo or globally... the amount of work would be the same no matter where I set the patterns. And what is more ... for every future project which is added in this one repo I have to add the pattern in RhodeCode.
I hope I could clearify the situation a bit...
#3 Updated by Marcin Kuzminski [CTO] over 1 year ago
Ok this is now clear, i indeed was confused by that i didn't know you're talking about a single repository.
I'd have to talk to our dev team about that one. The code that does matching only has a condition for the ending
*. see: https://code.rhodecode.com/rhodecode-enterprise-ce/files/fd4b2bf5348f1def66ac9495be06eac1e60f8fae/rhodecode/lib/vcs/backends/svn/repository.py?mark=_tags_or_branches#L135
I guess we'd need to change that logic so it does pattern matching on whole tree.