Project

General

Profile

Actions

Defect #1275

closed

View differences for individual file of a changeset fails if the repository URL doesn't point to the repository root

Added by Anonymous almost 16 years ago. Updated almost 16 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
SCM
Target version:
Start date:
2008-05-21
Due date:
% Done:

0%

Estimated time:
Resolution:
Fixed
Affected version:

Description

Our SVN repository serves many projects. The structure is

|
|-Project1
|  |
|  |-trunk
|  |-branches
|  |-tags
|
|-Project2
|  |
|  |-trunk
|  |-branches
|  |-tags

So in Redmine, our repository settings for Project 2, point to the project 2 folder, not the root of the repository (a nice feature, not sure if it was intended but very useful because we have many projects in a single repository). (e.g. repository URL is set to http://server/svn/Project2 rather than http://server/svn

If we view a changeset, we get a correct list of the changed files. If we then click the 'view differences' button for the changeset, it correctly shows all differences in all files.

But if instead select 'view differences' for an individual file, we get a redmine page saying "The entry or revision was not found in the repository." which is definitely incorrect.

I believe this is to do with Redmine not matching the paths directly (from looking at the error message). This is the error (I've edited the error paths so that our project names don't appear)

Processing RepositoriesController#diff (for 172.16.75.119 at 2008-05-21 09:41:30) [GET]
  Session ID: 54cbe17bee37f0fe2d00d59a8e07c077
  Parameters: {"rev"=>"26121", "action"=>"diff", "id"=>"project2", "controller"=>"repositories", "path"=>["Project2", "trunk", "File1.cs"]}
Rendering template within layouts/base
Completed in 0.46900 (2 reqs/sec) | Rendering: 0.01600 (3%) | DB: 0.00000 (0%) | 500 Internal Server Error [http://server/repositories/diff/project2/trunk/File1.cs?rev=666]

I wonder if redmine is just appending the full path to the file to the repository URL when actually it should merge backwards (e.g. it is querying for http://server/svn/Project2/Project2/trunk/File1.cs rather than http://server/svn/Project2/trunk/File.cs because the repository URL is http://server/svn/Project2, not http://server/svn/ (which is the repository root). In this case it should merge the end of the repository URL with the start of the requested file URL.

  • redmine-0.7.1
  • svn-1.4.6 (over http)
  • ruby-1.8.6
  • rails-2.0.2
  • sqlite3-3.5.8
  • mongrel-1.1.4

Related issues

Related to Redmine - Defect #1262: Subversion repository "View differences" on each file rise ERRORClosedJean-Philippe Lang2008-05-20

Actions
Related to Redmine - Defect #1209: "View differences" of one file at /repositories/revision/ failsClosed2008-05-08

Actions
Related to Redmine - Defect #990: Repository: View differences doesn't workClosed2008-04-03

Actions
Actions

Also available in: Atom PDF