As the title says, I am unable to clone a repository via HTTPS.
The git command is the following:
git clone --recursive https://gitlab.com/<Group>/<Project>.git <Target Directory>
Git version is:
>git version 1.8.4.msysgit.0
Looking at the GIT’s verbose informations from CURL, this pops up:
>POST /<Group>/<Project>.git/git-upload-pack HTTP/1.1
Authorization: Basic <AUTHENTICATION KEY>
User-Agent: git/1.8.4.msysgit.0
Host: gitlab.com
Accept-Encoding: gzip
Content-Type: application/x-git-upload-pack-request
Accept: application/x-git-upload-pack-result
Content-Length: 250
* upload completely sent off: 250 out of 250 bytes
< HTTP/1.1 200 OK
* Server nginx is not blacklisted
< Server: nginx
< Date: Thu, 13 Aug 2015 21:15:30 GMT
< Content-Type: application/x-git-upload-pack-result
< Transfer-Encoding: chunked
< Status: 200 OK
< Cache-Control: no-cache
< X-Request-Id: <Request ID>
< X-Runtime: 0.151848
<
* transfer closed with outstanding read data remaining
* Closing connection 1
error: RPC failed; result=18, HTTP code = 200
fatal: The remote end hung up unexpectedly
Tried enlarging http.postBuffer (both locally and globally) to 524288000 (as suggested from similar StackOverflow issues) with no result.
What really comes up in my mind is the absence of a Content-Length header.
Especially since in the libCURL documentations, this is the description for the Error Result 18:
CURLE_PARTIAL_FILE (18)
A file transfer was shorter or larger than expected.
This happens when the server first reports an expected transfer size, and then delivers data that doesn’t match the previously given size.
Cloning via SSH is very problematic for me.