TortoiseGit保存用户身份验证/凭据

时间:2012-12-22 04:56:00

标签: git github tortoisegit

有没有办法用TortoiseGit保存GITHUB's user credentials

每当我进行推/拉时,它都会提示我下面的对话框。

我想保存我的用户凭据信息,就像我使用TortoiseSVN一样。

enter image description here

10 个答案:

答案 0 :(得分:336)

对于TortoiseGit 1.8.1.2或更高版本,有一个用于打开/关闭凭证助手的GUI。

它支持git-credential-wincredgit-credential-winstore

TortoiseGit 1.8.16添加对git-credential-manager的支持(Git Credential Manager,git-credential-winstore的继承者)

首次同步时,系统会要求您输入用户名和密码,然后输入它们并将其保存到Windows凭证存储区。下次同步时,它不会要求用户或密码。

使用方法:右键单击→TortoiseGit→设置→Git→凭据。选择Credential helper:wincred - 此存储库仅限/ wincred - 当前Windows用户

enter image description here

答案 1 :(得分:63)

如果你打算回答这个问题

我在TortoiseGit中包含git-credential之前几个月写了这篇文章。鉴于过去几年中发现的大量安全漏洞以及我对网络安全的了解程度,我强烈建议您为连接的每台服务器使用唯一的(最小2048位RSA)SSH密钥。

以下语法仍然可用,但目前有更好的工具,例如git-credential可接受的答案告诉您如何使用。这样做。


尝试将远程URL更改为https://username@github.com/username/repo.git,其中username是您的github用户名,repo是您的存储库的名称。

如果您还想存储密码(不推荐),则网址如下所示:https://username:password@github.com/username/repo.git

还有另一种方法可以存储来自此github帮助文章的密码:https://help.github.com/articles/set-up-git#password-caching

答案 2 :(得分:25)

使用git版本1.8.3.msysgit.0和TortoiseGit 1.8.4.0,上述答案都不适用于我。

在我的特殊情况下,我必须通过HTTPS连接到远程git仓库,使用完整的电子邮件地址作为用户名。 在这种情况下,wincred似乎无效。

使用电子邮件地址作为repo URL的一部分也不起作用,因为该软件似乎被URL中“@”字符的双重外观所混淆。

我确实设法使用winstore克服了这个问题。这是我做的:

这会将git-credential-winstore.exe复制到本地目录,并向全局.gitconfig添加两行。您可以通过检查全局.gitconfig来验证这一点。这是通过文件夹上的鼠标右键“TortoiseGit>设置> Git>编辑全局.gitconfig”最简单的方法。该文件应包含两行,如:

    [credential]
        helper = !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
  • “网络”或“凭据”下无需其他TortoiseGit设置。特别是:由于这些配置行,“Credential”下的“Credential helper”下拉菜单将变为空白,因为TortoiseGit无法识别新助手。不要将下拉菜单设置为其他值,否则全局.gitconfig将被错误的值覆盖! (*)

您现在准备好了:

  • 尝试从远程存储库中提取。你会注意到一个身份验证弹出窗口询问你的用户名和密码,弹出窗口应该与默认的TortoiseGit弹出窗口在视觉上不同。这是一个好兆头,意味着winstore有效。输入正确的身份验证,拉动应该成功。
  • 再次尝试相同的拉动,不再询问您的用户名和密码。

完成! 在winstore负责身份验证的同时,享受与远程仓库的互动。

(*)或者,如果您不喜欢TortoiseGit Credential设置助手下拉菜单中的空白选择,您可以使用“高级”选项:

  • 转到“TortoiseGit>设置>凭据”
  • 选择凭据帮助程序“高级”
  • 点击Helpers下的“G”(全局)
  • 输入Helper路径,如下所示。 注意:常规Windows路径表示法(例如“C:\ Users ...”)在此处不起作用,您必须复制在全局winstore中创建的确切行{ {1}}没有“helper =”位。

    .gitconf
  • 点击“添加新/保存”按钮

答案 3 :(得分:8)

对于msysgit 1.8.0,从https://github.com/downloads/msysgit/git/git-credential-wincred.zip下载git-credential-wincred.exe并输入C:\ Program Files \ Git \ libexec \ git-core

对于msysgit 1.8.1及更高版本,exe是内置的。

在git config中,添加以下设置。

[凭证] helper = wincred

答案 4 :(得分:7)

使用TortoiseGit保存用户名和密码

在TortoiseGit中保存您的登录详细信息非常简单。每次进行拉动或推动时,都不必输入用户名和密码。

  1. 使用以下内容创建名为_netrc的文件:

    机器github.com
    登录yourlogin
    密码yourpassword

  2. 将文件复制到C:\ Users \(或其他位置;这恰好是我放置的位置)

  3. 转到命令提示符,键入setx home C:\ Users \

  4. 注意:如果您使用的是早于Windows 7的内容,则setx命令可能不适合您。请改用set,并使用“我的电脑”下的“高级设置”将家庭环境变量添加到Windows。

    信贷: http://www.munsplace.com/blog/2012/07/27/saving-username-and-password-with-tortoisegit/

答案 5 :(得分:7)

[打开git设置(TortoiseGit→设置→Git)] [1]

[在GIt中:点击编辑全局.gitconfig] [2]

config username and password

答案 6 :(得分:2)

这就是这个, 右键单击 - > Tortoise Git - >设置 - > Git - >凭证 - >选择" Wincred,所有Windows用户" - >点击申请

它只会问密码一次。

答案 7 :(得分:2)

如果您是Windows 10 + TortoiseGit 2.7用户:

  1. 首次登录时,只需按照提示输入凭据并保存密码即可。
  2. 如果您需要更新凭据,请不要在TortoiseGit设置上浪费时间。相反,Windows搜索>凭据管理器> Windows凭据>找到您的git条目>编辑。

答案 8 :(得分:0)

转到项目回购, 右键单击 - > 'Git Bash Here'

在git bash windows中输入

cd ~
pwd

我得到类似的东西

/c/Users/<windows_username>

现在将您的公钥和私钥复制到此路径

C:\Users\<windows_username>\.ssh

我在那里得到了以下文件

id_rsa
id_rsa.pub
known_hosts

这里

现在,当需要使用凭据时,它会使用这些文件并在需要时提示输入密码。

答案 9 :(得分:0)

我将 Windows 版 Git 升级到最新的 (2.30.0) 64 位,现在运行正常。 从 url https://git-scm.com/download/win 获取最新信息并运行以下命令进行验证。 $ git --version $ git 版本 2.30.0.windows.1