Git clone始终要求个人访问令牌(私有回购)
每次我尝试克隆私人回购时,都会收到添加用户名和密码的提示 我环顾四周看了看有什么问题,因为我添加了密码,但不起作用,发现我必须使用个人访问令牌。 现在,每次我试图克隆私有回购时,我都必须添加(或生成另一个)令牌Git clone始终要求个人访问令牌(私有回购),git,authentication,github,git-clone,Git,Authentication,Github,Git Clone,每次我尝试克隆私人回购时,都会收到添加用户名和密码的提示 我环顾四周看了看有什么问题,因为我添加了密码,但不起作用,发现我必须使用个人访问令牌。 现在,每次我试图克隆私有回购时,我都必须添加(或生成另一个)令牌 有没有办法在没有令牌的情况下克隆私有git回购?或者至少能够添加我的密码而不是该令牌?您可以使用SSH进行克隆,并使用SSH密钥进行身份验证。关于如何使用SSH设置git有很多问题,对于其他提供商来说也非常类似。设置后,不要忘记使用SSH URL(而不是HTTPS URL)克隆repo,
有没有办法在没有令牌的情况下克隆私有git回购?或者至少能够添加我的密码而不是该令牌?您可以使用SSH进行克隆,并使用SSH密钥进行身份验证。关于如何使用SSH设置git有很多问题,对于其他提供商来说也非常类似。设置后,不要忘记使用SSH URL(而不是HTTPS URL)克隆repo,或者将克隆的repo的
来源更改为SSH URL。通过HTTPS访问存储库时,可以使用git凭据存储来存储用户名和密码。
跑
然后
git pull
这将询问您的用户名和密码,然后记住以备将来使用。请注意,运行上述命令将在~/.git credentials
处创建一个文件,并以纯文本形式存储凭据,这可能会带来安全风险。
另一种方法是将凭据存储在内存而不是磁盘中。为此,您可以运行以下命令
git config credential.helper 'cache --timeout=3600'
这样git就不会在磁盘上存储任何文件,而是使用内存来存储凭据。此处的timeout
参数用于指定凭据应在接下来的1小时内缓存。解决方案
这就是我如何使它工作的
打开一个新的终端并添加
ssh-keygen-t rsa-b4096-C“[github电子邮件地址]”
终端显示了以下内容:
生成公共/私有rsa密钥对。[按回车键]
输入保存密钥的文件(/home/${USER}/.ssh/id\u rsa):
输入密码短语(无密码短语为空):[按Enter键]
再次输入相同的密码:[按Enter键]
然后
cd/.ssh
ls[您应该看到3个文件]
cat[file].pub
复制内容,然后转到您的Github配置文件设置->SSH和GPG密钥->新建SSH密钥->从[file]粘贴内容。发布在那里。
完成此操作后,我可以使用SSH克隆github repo,而无需添加令牌。您可以添加有关源git repo的信息吗,是在github上吗?bitbucket,gitlab是一个裸git服务器吗?它是否配置了ssh密钥和/或LDAP?
git config credential.helper 'cache --timeout=3600'