Skip to content

Git over HTTP will receive an empty repo if `giltab-git-http-server` is not properly configured

If for some reason gitlab-git-http-server is not properly configured, or you are using a custom nginx or Apache proxy that forwards directly to Unicorn and you attempt to clone via HTTP, the request succeeds, you receive a 200 and an empty repo.

This very much affects CI.

gitlab-ci-multi-runner 0.5.5-1-g69bc934 (69bc934) 
Using Shell executor... 
Running on ciworker01...

Cloning repository... 
Cloning into 'builds/996c2f68/0/nms/project'... 
warning: You appear to have cloned an empty repository. 
Checking out 1b50f515 as dev... 
fatal: reference is not a tree: 1b50f5157b357f4c006ceccf0e36085bad300180

ERROR: Build failed with: exit status 128

When this happens, the error should be more descriptive. Maybe mention that gitlab-git-http-server seems to not be running or something like that. It should also not respond with a 200.

/cc @ayufan @jacobvosmaer