我们使用AWS代码部署将Github项目部署到Ec2实例,每次部署它时都会要求Github用户名和密码来下载存储库。找到以下解决方法
为PHP存储库设置Oauth是通过在composer auth.json .composer / auth.json 中添加它来完成的。
{
"http-basic": {},
"github-oauth": {"github.com": "xyzasasasauhu"}
}
但是无法为Golang项目找到一种方法。通常,我们希望在不提供明确凭据的情况下实现 go get https://github.com/username/reponame 。
答案 0 :(得分:1)
这个问题有两种解决方案:
请勿使用go get
获取私有GitHub存储库的代码。只要代码最终在正确的子目录($GOPATH/src/github.com/org/project
)中,Go就不关心它是如何到达那里的。只需在构建脚本中添加一些命令:
DIR=$GOPATH/src/github.com/org/project
TOKEN=yourtoken
if [ -d $DIR ]; then
cd $DIR
git reset --hard
git clean -dfx
else
mkdir -p $DIR
cd $DIR
git init
fi
git pull https://$TOKEN@github.com/org/project.git