SVN subdirectory as repository in Redmine

Added by Daniel S over 9 years ago

Hi

we have a large project that over time has split into several sub-projects. So far this has been managed in one Redmine project and in one SVN repository with the layout

root
branches
tags
trunk
projectA
projectB
projectC

I want to clean this up a bit and using 'svn move' now have the following structure

root
projectA
branches
tags
trunk
projectB
branches
tags
trunk
projectC
branches
tags
trunk

Parallel to this I've splitted the Redmine project and now have

Project
ProjectA
ProjectB
ProjectC

with their corresponding issues.

However, I've run into two issues concerning subversion now:

  1. If I add https://my.server.com/svn/project/projectA as repository of ProjectA, Redmine.pm does not grant access. Only if I have https://my.server.com/svn/project in one project it is possible to access it - with that project's user permissions. This prevents me from fine-tuning access access rights to the different projects. I guess that this is because Redmine.pm checks against the repository, not the whole path. But is this an implementation "problem" that could be fixed or is there nothing that can be done about it?
  2. One of the reasons I did not split the project into different repositories is so that code can be (a) moved/copied between projects, (b) a tag of the whole super-project can be created and (c) we do not lose the revision history. However, in Redmine's repository views I only can see the revisions that happened AFTER the projects have moved to their new place as it seems that Redmine checks the path in the revisions against the HEAD - which of course does not match at all. Is there a way around this?

TIA

Daniel

Replies (3)

RE: SVN subdirectory as repository in Redmine - Added by Felix Schäfer over 9 years ago

Split your repository into project-level ones, there are ways to not loose commit history (I think svn export, svndumpfilter, svn import).

If not: Patching redmine.pm to support that setup won't be trivial and is up to you, keeping revisions that happened to the "observed" tree would require patching too.

RE: SVN subdirectory as repository in Redmine - Added by Daniel S over 9 years ago

I know that I can copy the revisions (though overall this would be inefficient) when splitting the repository, but there are other reasons why one wants to keep the projects in one repository (moving code, tagging the whole project, keeping revision numbers global so 'age' of exports can be compared, only one repository to maintain for hooks, backups, etc).

I took a closer look at redmine.pm and it seems it is indeed non-trivial to get more fine-grained permissions, though maybe I will just hack something together (it won't be pretty) :-(

RE: SVN subdirectory as repository in Redmine - Added by Daniel S over 9 years ago

I have solved problem (1) now by doing a very rough patch of Redmine.pm (attached, it's really not pretty). Maybe I should have patched the Redmine Repository Control plugin, but I saw that one too late. Still, the patch works for my requirements.

Redmine.pm-1.0.0.patch Magnifier - Patch to support multiple projects per SVN repository (3.3 KB)

(1-3/3)