Custom git config
Sourcegraph supports customising git-config and ssh_config for adjusting the behaviour of git. Sourcegraph will read these from the standard locations.
This guide documents how to configure git-config. To set up SSH and authentication for repositories, see Repository authentication.
- Sourcegraph with Docker Compose: refer to the Docker Compose guide to set up custom Git configuration and authentication, which can be adapted to additionally set
/etc/gitconfig
. - Sourcegraph with Kubernetes: refer to the Kubernetes guide to configure repository cloning via SSH, which can be adapted to additionally set
/etc/gitconfig
. - Single-container Sourcegraph: refer to the single-container guide to set up custom Git configuration and authentication.
- Pure-docker Sourcegraph: refer to the Pure-Docker guide to configure SSH cloning, which can be adapted to additionally set
/etc/gitconfig
.
Example: alternate clone URL for repos
Some sites put an HTTPS or SSH proxy in front of their code host to reduce load. Some sites also use a service like AWS CodeCommit to do the same. In these cases, the repos still should be treated as being repos on the original code host, not the proxy site.
For example, I have a GitHub repo github.com/foo/bar
. I want Sourcegraph to clone it using the URL https://cloneproxy.example.com/foo/bar.git. But I still want the "Go to GitHub repository" button, etc., to take me to https://github.com/foo/bar. You can use the git configuration insteadOf
:
# ~/.gitconfig or /etc/gitconfig [url "https://cloneproxy.example.com"] insteadOf = https://github.com
If you are cloning via SSH, you can also achieve this with an SSH configuration:
# ~/.ssh/config Host github.com Hostname cloneproxy.example.com