diff options
author | Bruno Ribas <ribas@c3sl.ufpr.br> | 2008-02-08 14:38:04 -0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-02-09 23:37:03 -0800 |
commit | b59012ef4e7dde1895d988736c7df64f68b1e940 (patch) | |
tree | 4e37b9b883eb0ea33d074cc01df5c864479fadff /gitweb | |
parent | 053d9e432be246a389fb8adaa0c88e7c791f8b21 (diff) | |
download | git-b59012ef4e7dde1895d988736c7df64f68b1e940.tar.gz |
gitweb: Use the config file to set repository owner's name.
Now gitweb checks if gitweb.owner exists before trying to get filesystem's
owner.
Allow to use configuration variable gitweb.owner set the repository owner,
it checks the gitweb.owner, if not set it uses filesystem directory's owner.
Useful when we don't want to maintain project list file, and all
repository directories have to have the same owner (for example when the
same SSH account is shared for all projects, using ssh_acl to control
access instead).
Signed-off-by: Bruno Ribas <ribas@c3sl.ufpr.br>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'gitweb')
-rw-r--r-- | gitweb/README | 4 | ||||
-rwxr-xr-x | gitweb/gitweb.perl | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gitweb/README b/gitweb/README index 4c8bedf744..2163071047 100644 --- a/gitweb/README +++ b/gitweb/README @@ -233,6 +233,10 @@ You can use the following files in repository: Displayed in the project summary page. You can use multiple-valued gitweb.url repository configuration variable for that, but the file takes precendence. + * gitweb.owner + You can use the gitweb.owner repository configuration variable to set + repository's owner. It is displayed in the project list and summary + page. If it's not set, filesystem directory's owner is used. * various gitweb.* config variables (in config) Read description of %feature hash for detailed list, and some descriptions. diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 8ef2735c58..c8fe22a961 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -1759,6 +1759,7 @@ sub git_get_project_owner { my $owner; return undef unless $project; + $git_dir = "$projectroot/$project"; if (!defined $gitweb_project_owner) { git_get_project_list_from_file(); @@ -1767,8 +1768,11 @@ sub git_get_project_owner { if (exists $gitweb_project_owner->{$project}) { $owner = $gitweb_project_owner->{$project}; } + if (!defined $owner){ + $owner = git_get_project_config('owner'); + } if (!defined $owner) { - $owner = get_file_owner("$projectroot/$project"); + $owner = get_file_owner("$git_dir"); } return $owner; |