我设置password caching,但奇怪之处在于我认为我已经这样做了。从电子邮件到github,似乎他们改变了一点:
Hello Thufir,
您所看到的是所有新创建的回购现在都在使用 默认情况下,智能HTTP而不是SSH。我们在这里有一篇帮助文章 在这里解释如何更改它: https://help.github.com/articles/why-is-git-always-asking-for-my-password
我们在这里也有一篇关于它的博客文章: https://github.com/blog/1104-credential-caching-for-wrist-friendly-git-usage
我看到的奇怪之处在于,我似乎记得在一段时间之前遵循这些确切的指示,用于缓存密码。
此外,是否有一个更好的方法,或许有公钥?我不太确定我的密码缓存在哪里,但我知道这不是一个好主意。 (我在Linux上,所以不能在电子邮件中使用建议的.exe。)
答案 0 :(得分:5)
您可以使用SSH连接到Github。他们有一个SSH key指南,以防您尚未将公钥添加到Github帐户,然后您只需使用SSH repo URL而不是HTTPS repo URL来克隆您的存储库。< / p>
您可以通过单击列出repo URL的旁边的按钮找到SSH URL。如果您已经克隆了HTTPS存储库,则可以添加一个指向SSH URL的 new 远程,并使用它来进行无密码推送/拉动!
答案 1 :(得分:1)
你必须更具体地说明你对“更好的方法”的意思,因为根据你如何解释,你会得到不同的答案。尝试更多地提炼你的问题,使它们更加具体和具体。
深入了解您所谈论的内容会让我发现git-credential-store,这似乎表明密码以明文形式存储。
据我所知,您将依赖操作系统的安全模型来确保未经授权的各方不会访问或更改该文件。这些信息似乎都没有用盐进行散列。简而言之,您帐户的安全性将高度依赖于存储缓存的计算机的安全性。
至于为什么HTTP支持是未来git的一个重点,我的解释很明确here.
总而言之,HTTP是标准的并且具有很高的采用率,它支持安全和不安全的交换以及端口80在大多数盒子和防火墙上都是开放的这一事实,使得使用HTTP相对简单。