Notes on http-push

3 messages, 2 authors, 2016-06-15 · open the first message on its own page

Notes on http-push

From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:42:11

Hi,

two little things I noticed while playing around with http-push:

- if you init your test by git-clone'ing from a http repo, be sure to
	add a slash to the URL, else git-push will tell you erroneously
	that the server does not do DAV locking. (Probably http-push.c 
	should be fixed to add the slash when needed.)

- if you execute "git push origin", it does not do anything (correctly?),
	if there is no "Push:" line in .git/remotes/origin (which is the
	default after cloning). Try "git push origin master". (Probably
	http-push or git-push should say something about it, not
	just quit silently.)

If you want to play with it yourself: A minimal setup using Apache needs 
something like this in httpd.conf:
--- snip ---
<Location /gits>
  DAV on
  Deny From *
  Allow From 192.168.0.
</Location>

DAVLockDB "/usr/local/apache2/temp/DAV.lock"
--- snap ---
Make sure that your www user has write permissions on <HTDOCS>/gits and on 
the DAV lock.

Have fun,
Dscho

Re: Notes on http-push

From: Nick Hengeveld <hidden>
Date: 2016-06-15 22:42:11

On Mon, Nov 07, 2005 at 07:34:34PM +0100, Johannes Schindelin wrote:
- if you init your test by git-clone'ing from a http repo, be sure to
	add a slash to the URL, else git-push will tell you erroneously
	that the server does not do DAV locking. (Probably http-push.c 
	should be fixed to add the slash when needed.)
In the -fetch counterparts, the trailing slash is added by git-fetch.sh,
does this belong in the get_remote_url() function in
git-parse-remote.sh?  I've only pushed with DAV, so I'm not sure whether
that would break anything else.

-- 
For a successful technology, reality must take precedence over public
relations, for nature cannot be fooled.

Re: Notes on http-push

From: Nick Hengeveld <hidden>
Date: 2016-06-15 22:42:11

On Mon, Nov 07, 2005 at 07:34:34PM +0100, Johannes Schindelin wrote:
If you want to play with it yourself: A minimal setup using Apache needs 
something like this in httpd.conf:
In the interest of testing push against another DAV server
implementation, I tried using Subversion's Apache DAV/DeltaV module.
It works if you enable autoversioning and authentication, which makes
for a slightly different minimal Apache setup:

LoadModule dav_module        modules/mod_dav.so
LoadModule dav_svn_module    modules/mod_dav_svn.so
LoadModule authz_svn_module  modules/mod_authz_svn.so
<Location /svn>
    DAV svn
    SVNPath /path/to/svn/repo
    SVNAutoversioning on
    AuthName "Subversion Repo"
    AuthType Basic
    AuthUserFile ....
    AuthGroupFile ....
    <LimitExcept GET>
        require ....
    </LimitExcept>
</Location>

While it's kind of useless to place immutable objects under version
control, it is sort of an interesting side effect that all the meta
files will have a history.

-- 
For a successful technology, reality must take precedence over public
relations, for nature cannot be fooled.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help