有没有办法生成证书等,以便我的prod服务器可以从我的github仓库中提取,而不是每次都进行身份验证?
答案 0 :(得分:27)
您可以create an access token并将其用作用户名(无密码)。
让您的访问令牌克隆存储库:
git clone https://<your-access-token>@github.com/username/repo.git
然后你可以在没有每次验证的情况下拉动。
这是最简单的方法,但会将令牌纯文本存储到.git / config中为了提高安全性,您可以setup password caching并像往常一样克隆https:
git clone https://github.com/username/repo.git
如果您要删除服务器对存储库的访问权限,只需删除application settings中的访问令牌。
我也更喜欢在部署环境中使用https而不是ssh。有时我们没有足够的访问权限来处理ssh,但即使在更便宜的托管服务上也可以使用https访问github。
答案 1 :(得分:11)
答案 2 :(得分:5)
生成ssh密钥
cd ~/.ssh
ssh-keygen -t rsa -C "your-email-address"
touch config
粘贴配置
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/YOUR_KEY
将公钥粘贴到github部署密钥设置
cat YOUR_KEY.pub
将远程从http设置为ssh
git remote set-url origin ssh://git@github.com/USERNAME/REPOSITORY.git
答案 3 :(得分:2)
我认为这可以通过使用凭据缓存和使用.netrc文件来完成。 Please Check This