GitLab is a free, open-source way to host private .git
repositories but it does not seem to work with Go. When you create a project it generates a URL of the form:
[email protected]:private-developers/project.git
where:
1.2.3.4
is the IP address of the gitlab serverprivate-developers
is a user group which has access to the private repoGolang 1.2.1 doesn't seem to understand this syntax.
go get [email protected]:private-developers/project.git
results in:
package [email protected]/project.git: unrecognized import path "[email protected]/project.git"
Is there a way to get this to work?
Run this command:
git config --global url."[email protected]:".insteadOf "https://1.2.3.4/"
Assuming you have the correct privileges to git clone
the repository, this will make go get
work for all repos on server 1.2.3.4
.
I tested this with go version 1.6.2, 1.8, and 1.9.1.