Git development
 help / color / mirror / Atom feed
* http-push sends MKCOL command to create remote directory MKCOL http://user@server:80/url/.git/refs/ that already exists
@ 2009-08-14 15:42 willievu
  2009-08-15  1:28 ` Tay Ray Chuan
  0 siblings, 1 reply; 2+ messages in thread
From: willievu @ 2009-08-14 15:42 UTC (permalink / raw)
  To: git


Steps will reproduce the problem:
1. create a bare & shared repository locally and copy to remote server
2. create a local repository. add and commit some files
3. git push to the remote server

$ git push --verbose --thin upload HEAD
Pushing to http://user@server/url/.git/
Password:
Fetching remote heads...
  refs/
  refs/heads/
  refs/tags/
updating 'refs/heads/master' using 'HEAD'
  from 0000000000000000000000000000000000000000
  to   0120f45ebfd90501868e990bfbb9f50fb0a8ebae

<<<<< Here, a MKCOL http://user@server:80/url/.git/refs/ request is sent.  
The WebDAV server returns a HTTP 500 Internal Server Error.  Then, the 
following message continues:

Unable to create branch path http://user@server/url/.git/refs/
Unable to lock remote branch refs/heads/master
error: failed to push some refs to 'http://user@server/url/.git/'

This is the server:

Server: Oracle9iAS/9.0.2.3.0 Oracle HTTP Server (Unix) mod_plsql/9.0.2.6.0b 
DAV/1.0.3.2.4-0119 (OraDAV enabled) mod_osso/9.0.2.0.0 mod_ossl/9.0.2.0.0 
mod_fastcgi/2.2.12 mod_perl/1.26 mod_oc4j/3.0

Is MKCOL expected even for existing directory in the remote repository?  Is
this a WebDAV server problem that 500 is returned?

-- 
View this message in context: http://n2.nabble.com/http-push-sends-MKCOL-command-to-create-remote-directory-MKCOL-http%3A--user%40server%3A80-url-.git-refs--that-already-exists-tp3445796p3445796.html
Sent from the git mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: http-push sends MKCOL command to create remote directory MKCOL  http://user@server:80/url/.git/refs/ that already exists
  2009-08-14 15:42 http-push sends MKCOL command to create remote directory MKCOL http://user@server:80/url/.git/refs/ that already exists willievu
@ 2009-08-15  1:28 ` Tay Ray Chuan
  0 siblings, 0 replies; 2+ messages in thread
From: Tay Ray Chuan @ 2009-08-15  1:28 UTC (permalink / raw)
  To: willievu; +Cc: git

Hi,

On Fri, Aug 14, 2009 at 11:42 PM, willievu<willievu@dev.java.net> wrote:
> Is MKCOL expected even for existing directory in the remote repository?  Is
> this a WebDAV server problem that 500 is returned?

Yes, you should expect MKCOLs to be done on directories that already
exist. On my Apache server with WebDAV, when a MKCOL is done on a
directory that already exists, it returns 405. Reading the WebDAV
specs (http://www.webdav.org/specs/rfc4918.html#rfc.section.9.3.1):

  405 (Method Not Allowed) - MKCOL can only be executed on an unmapped URL.

So this behaviour is accounted for in the spec itself, and git handles this too.

What I think is that your server isn't implementing WebDAV right, or
that you have some scripts/mods over the git repository you're serving
that are failing leading to the 500 error.

-- 
Cheers,
Ray Chuan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-08-15  1:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-14 15:42 http-push sends MKCOL command to create remote directory MKCOL http://user@server:80/url/.git/refs/ that already exists willievu
2009-08-15  1:28 ` Tay Ray Chuan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox