T
T
Timofey Yatsenko2014-11-17 19:06:42
git
Timofey Yatsenko, 2014-11-17 19:06:42

Why doesn't git work via http c gitlab?

I installed a fresh version of GitLab on debian, installed it manually, because. Omnibus is only available for x64.
Everything works through SSH. I was able to convert from SVN and upload one repository.
But flatly refuses to work via HTTP, the git shell on Windows issues the following:

$ git clone http://gitlab.***.ru/developers/hotels-catalog.git
Cloning into 'hotels-catalog'...
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

The repository is public. It does not ask for authorization.
I tried to enable authorization, then it asks for a login / password, but the output is the same.
Fiddler caught requests that occur: git makes a request
/developers/hotels-catalog.git/info/refs?service=git-upload-pack HTTP/1.1

Receives a response:
HTTP/1.1 200 OK
Server: nginx
Date: Mon, 17 Nov 2014 15:07:29 GMT
Content-Type: application/x-git-upload-pack-advertisement
Content-Length: 34
Connection: keep-alive
Status: 200 OK
Expires: Fri, 01 Jan 1980 00:00:00 GMT
Pragma: no-cache
Cache-Control: no-cache, max-age=0, must-revalidate
X-Request-Id: 55eedaf0-d5cb-40ea-8e39-886cde7e43f7
X-Runtime: 0.021077

001e# service=git-upload-pack
0000

And that is all. I looked at the description of the GIT protocol, in theory there should be much more information in this answer, but why it is so unclear.
Where to dig I do not know any more. Already tried everything. Tell me, can anyone come across?
PS
I can't use SSH, because the host on which the gitlab hangs is located behind several proxy servers, and if everything reaches the destination via http, then via SSH I break not into the gitlaba server, but into the proxying frontend.

Answer the question

In order to leave comments, you need to log in

2 answer(s)
T
Timofey Yatsenko, 2014-11-18
@thekip

Understood. It turned out that I incorrectly registered the path to GIT in config/gitlab.yml
by default there

git:
    bin_path: /usr/bin/git

When setting up, I blunted and wrote (in the manual it was written that if you collected GIT from source, then write this path. I mixed it up and wrote it, although I collected ruby ​​from the source and not GIT)
git:
    bin_path: /usr/local/bin/git

Для тех кто так же как и наткнется на нечто подобное опишу еще немного симптомов.
В самом гитлабе все работает, комиты отображаются. По ssh тоже все работает.
А вот http работает только частично.

M
mamkaololosha, 2014-11-17
@mamkaololosha

git clone httpS://github.com/YOUR-USERNAME/Spoon-Knife

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question