route: scm: fix git and mercurial changes action

If branch name has special character, "View revisions" link has route error.
For example, Redmine Mercurial hgsubversion mirror has "../sandbox/rails-3.2" named branch.

Git default branch of bare repository is defined at HEAD.
In most cases, it is *master*.
Mercurial GUI standard behavior is showing all revisions on top page.
So, Redmine default branch is *nil*.
Mercurial top page "View revisions" link has route error.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9617 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Toshi MARUYAMA
2012-05-03 14:49:29 +00:00
parent 2c28d6b5d1
commit b4350ca91a
2 changed files with 52 additions and 20 deletions
+8 -2
View File
@@ -214,6 +214,9 @@ RedmineApp::Application.routes.draw do
get 'projects/:id/repository/:repository_id/statistics', :to => 'repositories#stats'
get 'projects/:id/repository/:repository_id/graph', :to => 'repositories#graph'
get 'projects/:id/repository/:repository_id/changes(/*path(.:ext))',
:to => 'repositories#changes'
get 'projects/:id/repository/:repository_id/revisions/:rev', :to => 'repositories#revision'
get 'projects/:id/repository/:repository_id/revision', :to => 'repositories#revision'
post 'projects/:id/repository/:repository_id/revisions/:rev/issues', :to => 'repositories#add_related_issue'
@@ -228,13 +231,16 @@ RedmineApp::Application.routes.draw do
get 'projects/:id/repository/:repository_id/revisions/:rev/:action(/*path(.:ext))',
:controller => 'repositories',
:constraints => {
:action => /(browse|show|entry|changes|annotate|diff)/,
:action => /(browse|show|entry|annotate|diff)/,
:rev => /[a-z0-9\.\-_]+/
}
get 'projects/:id/repository/statistics', :to => 'repositories#stats'
get 'projects/:id/repository/graph', :to => 'repositories#graph'
get 'projects/:id/repository/changes(/*path(.:ext))',
:to => 'repositories#changes'
get 'projects/:id/repository/revisions', :to => 'repositories#revisions'
get 'projects/:id/repository/revisions/:rev', :to => 'repositories#revision'
get 'projects/:id/repository/revision', :to => 'repositories#revision'
@@ -249,7 +255,7 @@ RedmineApp::Application.routes.draw do
get 'projects/:id/repository/revisions/:rev/:action(/*path(.:ext))',
:controller => 'repositories',
:constraints => {
:action => /(browse|show|entry|changes|annotate|diff)/,
:action => /(browse|show|entry|annotate|diff)/,
:rev => /[a-z0-9\.\-_]+/
}
get 'projects/:id/repository/:repository_id/:format(/*path(.:ext))', :to => 'repositories#entry', :format => /raw/