threads / discuss / 27805

Multiple projects with Gitweb

Subject: Multiple projects with Gitweb

## tl;dr

4 messages between Jul 13, 2011 and Jul 13, 2011.

replies: 3people: 3as markdown or json

mathieu.pogeant@renesasmobile.com· Jul 13, 2011, 13:10 UTC · lore
Hello,

I'm trying to have this with GitWeb. I have a repo under /project1 and a repo under /project2 on my Git server. I would like to access these 2 repo via Gitweb like that: http://mygitserver/project1 and http://mygitserver/project2. The problem is that gitweb.conf permit to use just one repo with directive $projectroot.

Did someone face the same problem? If needed, I can share configuration file. Best regards, -- Mathieu POGEANT

Drew Northup· Jul 13, 2011, 14:12 UTC · re: mathieu.pogeant@renesasmobile.com · lore

Re: Multiple projects with Gitweb

On Wed, 2011-07-13 at 13:10 +0000, Mathieu.Pogeant@renesasmobile.com wrote:

Show 9 quoted lines
> Hello,
> 
> I'm trying to have this with GitWeb.
> I have a repo under /project1 and a repo under /project2 on my Git server.
> I would like to access these 2 repo via Gitweb like that: http://mygitserver/project1 and http://mygitserver/project2.
> The problem is that gitweb.conf permit to use just one repo with directive $projectroot.
> 
> Did someone face the same problem?
> If needed, I can share configuration file.

Mathieu, There is no requirement that gitweb only be provided by the HTTPd server once per machine or virtual host. It is entirely reasonable to set up two subdirectories (project1 and project2) in your virtual host's home and serve gitweb from each of those separately using an instance-local configuration file. That way each instance can be customized.

The /etc/gitweb.conf file is not meant to provide for that customization. The way that gitweb is currently constructed, if you use a local configuration file for an instance it will completely ignore the system-wide configuration file (I didn't make that decision, as it doesn't make much sense to me either), so you will have to make sure that ALL settings required are set in each instance-local configuration.

I plan on re-submitting my touch-ups to that documentation now that a have a minor window of sanity here at work (not that I expect that to last).

-- 
-Drew Northup
________________________________________________
"As opposed to vegetable or mineral error?"
-John Pescatore, SANS NewsBites Vol. 12 Num. 59
Jakub Narebski· Jul 13, 2011, 16:20 UTC · re: Drew Northup · lore

Re: Multiple projects with gitweb

Drew Northup <drew.northup@maine.edu> writes:
[...]
Show 6 quoted lines
> The /etc/gitweb.conf file is not meant to provide for that
> customization. The way that gitweb is currently constructed, if you use
> a local configuration file for an instance it will completely ignore the
> system-wide configuration file (I didn't make that decision, as it
> doesn't make much sense to me either), so you will have to make sure
> that ALL settings required are set in each instance-local configuration.

There were some patches sent to alleviate it (with read_config_file that one can use in per-instance config file) and fix it (with introduction of common configuration file /etc/gitweb-common.conf), but I don't know what happened to it.

> I plan on re-submitting my touch-ups to that documentation now that a
> have a minor window of sanity here at work (not that I expect that to
> last).
That would be very nice.
-- 
Jakub Narębski
Jakub Narebski· Jul 13, 2011, 16:17 UTC · re: mathieu.pogeant@renesasmobile.com · lore

Re: Multiple projects with gitweb

<Mathieu.Pogeant@renesasmobile.com> writes:
Show 9 quoted lines
> Hello,
> 
> I'm trying to have this with GitWeb.
> I have a repo under /project1 and a repo under /project2 on my Git server.
> I would like to access these 2 repo via Gitweb like that: 
> http://mygitserver/project1 and http://mygitserver/project2.
>
> The problem is that gitweb.conf permit to use just one repo
> with directive $projectroot.
Actually it is not true.  The full path to repository is
  "$projectroot/$project"
so if you really have both repositories in top directory, try using
  our $projectroot = "/";

Of course to have "http://mygitserver/project1" as URL you have to do some URL rewriting; I think there is example either in gitweb/README or in gitweb/INSTALL.

HTH
-- 
Jakub Narębski

← back to recent threads