[prev in list] [next in list] [prev in thread] [next in thread] 

List:       git
Subject:    Re: [RFC PATCH v3 00/17] Return of smart HTTP
From:       Mark Lodato <lodatom () gmail ! com>
Date:       2009-10-16 4:20:29
Message-ID: ca433830910152120l1bd358ads6401572ccc05b29 () mail ! gmail ! com
[Download RAW message or body]

On Wed, Oct 14, 2009 at 11:36 PM, Shawn O. Pearce <spearce@spearce.org> wrote:
> This series is still lacking:
> 
> * The HTTP protocol documentation
> * Tests for the smart http transport code (existing tests pass)

* Dumb HTTP push support

It would be really nice if git-http-backend supported dumb pushing
over WebDAV.  Currently, to support both smart and dumb pushing, one
has to configure Apache in a very awkward and confusing way (if it is
even possible - I'm still trying to figure it out).  Without some way
to support older clients, it will be very hard to transition to the
new protocol.


Also, your examples use "DocumentRoot /pub/git", but I think most
people would want to have their main website as the DocumentRoot, have
the URL "/git" serve the repositories through gitweb, and have that
same "/git" URL be `git clone'-able.  The Apache configuration for
this is complicated and non-intuitive, so I think an example of this
in the documentation is warranted.  The following accomplishes what I
describe, except it does not work with dump HTTP push, and does not
allow anonymous read-only access.  (I am currently trying to figure
out how to do both of these things.)

-- 8< --
DocumentRoot /var/www/htdocs
# Rest of httpd config...

<Directory /pub/git>
   SetHandler git-http-backend
   Action git-http-backend /git-http-backend virtual
</Directory>

# To allow anonymous access (but to disallow pushing), comment out the
following Location block.
<Location /git-http-backend>
   AuthName "git"
   AuthType Basic
   AuthUserFile /etc/apache2/passwd/git.passwd
   Require valid-user
</Location>

# Each of the following Aliases should be one line:
AliasMatch ^/git/(.*/(HEAD|info/refs|objects/(info/[^/]*|[0-9a-f]{2}/[0-9a-f]{38}|pack/pack-[0-9a-f]{40}\.(pack|idx))|git-(upload|receive)-pack))$
 "/pub/git/$1"
ScriptAlias /git "/var/www/cgi-bin/gitweb.cgi"
ScriptAlias /git-http-backend "/usr/local/libexec/git-core/git-http-backend"
-- >8 --
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic