302

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

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

我想将我的用户凭据信息保存在某个地方,就像我使用 TortoiseSVN 所做的那样。

在此处输入图像描述

4

10 回答 10

371

对于 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 → 凭证。选择凭据助手:wincred - 仅限此存储库 / wincred - 当前 Windows 用户

在此处输入图像描述

于 2013-03-12T01:23:50.143 回答
72

如果您要否决这个答案

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

以下语法仍然可用,尽管今天有更好的工具可用,例如git-credential接受的答案告诉您如何使用。改为这样做。


尝试将远程 URL 更改为https://username@github.com/username/repo.gitusername的 github 用户名和repo存储库的名称。

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

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

于 2012-12-22T05:07:10.363 回答
25

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

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

使用电子邮件地址作为回购 URL 的一部分也不起作用,因为该软件似乎被 URL 中“@”字符的双重出现弄糊涂了。

我确实设法使用winstore. 这是我所做的:

这会将 复制git-credential-winstore.exe到本地目录并将两行添加到您的全局.gitconfig. 您可以通过检查您的全局.gitconfig. 这最容易通过文件夹上的鼠标右键完成,“TortoiseGit > Settings > Git > Edit global .gitconfig”。该文件应包含两行,例如:

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

您现在可以开始了:

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

完毕!在处理身份验证的同时享受与远程仓库的交互winstore

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

  • 转到“TortoiseGit > 设置 > 凭据”
  • 选择凭证助手“高级”
  • 点击 Helpers 下的“G”(全局)
  • 输入 Helper 路径,如下所示。注意:常规的 Windows 路径表示法(例如“C:\Users...”)在这里不起作用,您必须复制winstore在全局中创建的安装的确切行,.gitconf而不需要“he​​lper =”位。

    !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
    
  • 单击“添加新/保存”按钮

于 2013-08-17T07:01:24.463 回答
20

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

  1. 首次登录,只需按照提示输入您的凭据并保存密码。
  2. 如果您需要更新您的凭据,请不要在 TortoiseGit 设置上浪费时间。相反,Windows 搜索 > 凭据管理器 > Windows 凭据 > 找到您的 git 条目 > 编辑。
于 2019-01-11T17:08:00.667 回答
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 -核

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

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

[凭据] 助手 = wincred

于 2012-12-22T05:58:30.480 回答
8

使用 TortoiseGit 保存用户名和密码

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

  1. 创建一个名为 _netrc 的文件,其内容如下:

    机器 github.com
    登录 yourlogin
    password yourpassword

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

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

注意:如果您使用的是 Windows 7 之前的版本,则 setx 命令可能不适合您。改用 set 并通过“我的电脑”下的“高级设置”将 home 环境变量添加到 Windows。

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

于 2013-06-23T12:21:34.740 回答
8

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

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

配置用户名和密码

于 2017-05-16T04:36:59.370 回答
0

转到项目仓库,右键单击 -> 'Git Bash Here'

在 git bash 窗口中输入

cd ~
pwd

我得到这样的东西

/c/Users/<windows_username>

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

C:\Users\<windows_username>\.ssh

我在那里得到了以下文件

id_rsa
id_rsa.pub
known_hosts

这里

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

于 2018-05-24T15:48:17.033 回答
0

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

于 2021-01-02T05:31:12.150 回答
0

从旧的主要版本更新到 Git for Windows 2.35.1.windows.2 时,您可能需要执行以下操作:

  1. 启动 Git CMD

  2. 跑:git credential-manager-core configure

  3. 这应该给出如下响应:

    正在配置组件“Git Credential Manager”...

    正在配置组件“Azure Repos 提供程序”...

现在开始下一个 Git 操作时,Git 只会要求您选择一个帐户,将其存储起来并在下一个操作中重复使用。

于 2022-02-08T14:13:47.870 回答