Re: [gitorious] Re: Gitorious and HTTP Cloning

2010-12-03 Thread Marius Mårnes Mathiesen
On Thu, Dec 2, 2010 at 3:18 PM, Javier Moro Sotelo m...@javiermoro.eswrote:

 Now cloning works well (after adding user www-data to git group), I
 get this new error when pushing into the remote repository, in fact, I
 get this message on the console:


Ah, that explains it, the HTTP support in Gitorious currently does not
support push operations, you'll need to use SSH for that.

Git's HTTP support was greatly improved some months ago, when their smart
HTTP was introduced. This basically provides read/write access and a much
more efficient HTTP handler provided as a CGI script that handles this -
this CGI is part of Git itself. One issue with this is that it does not
support URLs that cannot be mapped directly to the file system. We're
investigating using JGit's smart HTTP implementation, which lets you provide
a custom object that resolves URLs to file system paths; this would make a
lot of sense for Gitorious. In fact, JGit itself makes a lot of sense for
Gitorious in lack of a complete C library for Git.

Cheers,
- Marius

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com


[gitorious] Re: Gitorious and HTTP Cloning

2010-12-02 Thread Javier Moro Sotelo
 This is xsendfile's way of telling you it's being told to serve a directory.
 What I don't understand is what caused this request to be made - did you
 enter the URL in a browser or using wget/curl? AFAIK, the first URI Git will
 request over HTTP is $GIT_DIR/info/refs - I don't think Git itself should
 request the bare URI?

I'm really sorry, yesterday I was a little bit in a hurry when I
answered and I forgot to give all the details.

Now cloning works well (after adding user www-data to git group), I
get this new error when pushing into the remote repository, in fact, I
get this message on the console:

---
u...@host:~/test$ git push origin master
error: Cannot access URL http://git.example.org/test/test.git/, return
code 22
fatal: git-http-push failed
---
And on the apache log, I get

---
(20024)The given path is misformatted or contained invalid characters:
xsendfile: not a file /srv/git/repositories/
ae9/461/59afa694588810320aaa366622ab9ee4ab.git/
---

I hope now it makes more sense.

Thanks.

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com


[gitorious] Re: Gitorious and HTTP Cloning

2010-12-02 Thread Javier Moro Sotelo
I've tried to analyze some packages with wireshark (to see what
happens on the client when I try to push into the repository) and at
some point, I get a package with a 404 error saying:

---
The requested URL /test/test.git/ was not found on this server.
---

I'm starting to think that the component which manages the http git
push requests is not working, or is not receiving any petitions...
¿could it be possible? ¿where else can I look for debug information?

Thanks

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com


RE: [gitorious] Re: Gitorious and HTTP Cloning

2010-12-02 Thread Peter Kjellerstedt
 -Original Message-
 From: gitorious@googlegroups.com [mailto:gitori...@googlegroups.com] On
 Behalf Of Javier Moro Sotelo
 Sent: den 2 december 2010 15:18
 To: Gitorious
 Subject: [gitorious] Re: Gitorious and HTTP Cloning
 
  This is xsendfile's way of telling you it's being told to serve a
  directory. What I don't understand is what caused this request to 
  be made - did you enter the URL in a browser or using wget/curl? 
  AFAIK, the first URI Git will request over HTTP is 
  $GIT_DIR/info/refs - I don't think Git itself should request the 
  bare URI?
 
 I'm really sorry, yesterday I was a little bit in a hurry when I
 answered and I forgot to give all the details.
 
 Now cloning works well (after adding user www-data to git group), I
 get this new error when pushing into the remote repository, in fact, 
 I get this message on the console:
 
 ---
 u...@host:~/test$ git push origin master
 error: Cannot access URL http://git.example.org/test/test.git/, return code 22
 fatal: git-http-push failed
 ---
 And on the apache log, I get
 
 ---
 (20024)The given path is misformatted or contained invalid characters:
 xsendfile: not a file /srv/git/repositories/
 ae9/461/59afa694588810320aaa366622ab9ee4ab.git/
 ---
 
 I hope now it makes more sense.
 
 Thanks.

Unfortunately, Gitorious does not support pushing via HTTP. It is 
only supported via ssh.

//Peter

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com


[gitorious] Re: Gitorious and HTTP Cloning

2010-12-01 Thread Javier Moro Sotelo
 You should probaby configure mod_xsendfile to allow serving files outside of
 the document root.

Already did that... anyway, i solved the initial problem, it seemed
that www-data was not in the same group as the repositories owner
(git), so adding www-data to git group solved the issue.

The problem now is different, I'm getting this error.

(20024)The given path is misformatted or contained invalid characters:
xsendfile: not a file /srv/git/repositories/
ae9/461/59afa694588810320aaa366622ab9ee4ab.git/

Now I'm completely lost...

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com


Re: [gitorious] Re: Gitorious and HTTP Cloning

2010-12-01 Thread Marius Mårnes Mathiesen
On Thu, Dec 2, 2010 at 12:29 AM, Javier Moro Sotelo m...@javiermoro.eswrote:

 (20024)The given path is misformatted or contained invalid characters:
 xsendfile: not a file /srv/git/repositories/
 ae9/461/59afa694588810320aaa366622ab9ee4ab.git/


This is xsendfile's way of telling you it's being told to serve a directory.
What I don't understand is what caused this request to be made - did you
enter the URL in a browser or using wget/curl? AFAIK, the first URI Git will
request over HTTP is $GIT_DIR/info/refs - I don't think Git itself should
request the bare URI?


Cheers,
- Marius

-- 
To post to this group, send email to gitorious@googlegroups.com
To unsubscribe from this group, send email to
gitorious+unsubscr...@googlegroups.com