在vagrant中更新git凭据



好吧,我通过vagrant使用git来更新我所从事的项目,我仍然使用基本身份验证而不是令牌身份验证。周五之后就不能用了,所以我需要更新一下

只是我不知道怎么做。

如果我执行这个命令"sudo git config——list——global"在vagrant中,我得到:

user.name=my username

user.email=my email address

当我执行命令"sudo git config——list——local"时,我得到了很多东西,我认为这些东西都不需要改变,因为它像"你的源是这个url,你的上游是另一个url,等等">

值得注意的是,我的密码没有在任何地方,但我怀疑它没有显示是出于安全原因。(我知道目前,如果我推送一些更改到原点,我不需要输入我的密码。)

那么,我的问题是,如何在这些凭证中设置身份验证令牌?如果失败,如果我不能,我如何"取消"我的密码,以便它要求我的令牌?

user.nameuser.email的设置不是认证设置

Git本身不会将你的密码存储在任何地方,因为Git本身从不会首先进行任何身份验证,所以它不需要你的密码。

当一个Git安装(例如您的笔记本电脑软件)需要与另一个Git安装(例如在GitHub上)通信时,Git会调用其他软件,例如用于http/https访问的libcurl例程或用于ssh访问的ssh系统。这些<<em>/em>进行身份验证,并且可能需要密码。由于Git本身没有在任何地方存储凭证,因此它们可能依赖于外部帮助程序,例如Git的"凭证帮助程序",或者它们可能有自己的方法来获取和分发凭证。例如,ssh使用文件和/或ssh-agent。

…我的问题是,如何在这些凭证中设置身份验证令牌?如果失败,如果我不能,我如何"取消"我的密码,以便它要求我的令牌?

这取决于您现在使用哪个程序进行身份验证。这些都依赖于操作系统和协议:当使用https://user@host/path/to/repo.git时,Git使用操作系统特定的libcurl代码和操作系统特定的凭据助手,当使用ssh://user@host/path/to/repo.git(或user@host:path/to/repo.git语法,在Git中是缩写)时,Git使用ssh。

参见:

  • 列出凭证帮助器的git凭证(特别是bk2204的答案)
  • 如何在Git中保存用户名和密码?

和类似的Google搜索结果,现在您已经知道了这些神奇的单词。当使用ssh(这是我最喜欢的方法)时,请参阅ssh文档(有很多这样的文档;这很复杂)

最新更新