有没有办法保存GITHUB's user credentials与TortoiseGit?
GITHUB's user credentials
每当我做推/拉操作时,它都会提示我下面的对话框。
我想把我的用户凭证信息保存在某个地方,就像我用TortoiseSVN做的那样。
如果你要投反对票的话
我是在TortoiseGit中包含git-credential的几个月前写的这篇文章。鉴于过去几年发现的大量安全漏洞以及我对网络安全的了解,我强烈建议您为连接的每个服务器使用唯一的(至少2048位RSA) SSH密钥。
下面的语法仍然可用,尽管今天有更好的工具可用,如git-credential,接受的答案告诉你如何使用。那就这样做吧。
git-credential
尝试将远程URL更改为https://username@github.com/username/repo.git,其中username是你的github用户名,repo是你的存储库的名称。
https://username@github.com/username/repo.git
username
repo
如果你还想存储你的密码(不推荐),URL看起来像这样:https://username:password@github.com/username/repo.git。
https://username:password@github.com/username/repo.git
还有另一种方法来存储这篇github帮助文章中的密码:https://help.github.com/articles/set-up-git#password-caching
对于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配置中,添加以下设置。
对于TortoiseGit 1.8.1.2或更高版本,有一个GUI来打开/关闭凭据帮助器。
它支持git-credential-wincred和git-credential-winstore。
git-credential-wincred
git-credential-winstore
TortoiseGit 1.8.16增加了对git-credential-manager (Git凭证管理器,git-credential-winstore的继承者)的支持
git-credential-manager
当你第一次同步时,你会被要求输入用户名和密码,输入后它们会被保存到Windows凭据存储中。下次同步时,它不会询问用户或密码。
使用方法:右键单击→TortoiseGit →设置→Git →证书。选择凭据帮助器:wincred -仅此存储库/ wincred -当前Windows用户
保存用户名和密码与TortoiseGit
在TortoiseGit中保存登录信息非常简单。省去了每次拉或推时输入用户名和密码的麻烦。
将文件复制到C:\Users\(或其他位置;这恰好是我放的地方)
进入命令提示符,输入setx home C:\Users\
注意:如果你使用的是Windows 7之前的版本,setx命令可能不适合你。请使用set,并通过“我的电脑”下的“高级设置”将家庭环境变量添加到Windows。
使用git版本1.8.3.msysgit,上述答案都不适用。0和TortoiseGit 1.8.4.0。
wincred
使用电子邮件地址作为回购URL的一部分也不起作用,因为软件似乎被URL中双重出现的“@”字符所迷惑。
我确实设法用winstore克服了这个问题。以下是我所做的:
winstore
git-credential-winstore.exe
这将把git-credential-winstore.exe复制到本地目录,并向全局.gitconfig添加两行。你可以通过检查全局.gitconfig来验证这一点。这是最简单的通过鼠标右键在文件夹,“TortoiseGit > Settings > Git > Edit global .gitconfig”。该文件应该包含如下两行:
.gitconfig
[credential] helper = !'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
你现在已经准备好了:
(*)或者,如果你不喜欢TortoiseGit凭证设置助手下拉菜单中的空白选择,你可以使用“高级”选项:
输入Helper路径,如下所示。注意:一个常规的Windows路径表示法(例如:"C:\Users…")在这里不起作用,你必须复制在全局.gitconf中不带"helper ="位创建的安装winstore的确切行。
.gitconf
!'C:\\Users\\yourlogin\\AppData\\Roaming\\GitCredStore\\git-credential-winstore.exe'
Click the "Add New/Save" button
[打开git设置(TortoiseGit→设置→git)][1]
[在GIt中:点击编辑全局的。gitconfig][2]
配置用户名和密码
去项目回购, 右键点击> 'Git Bash Here'
在git bash windows类型中
cd ~ pwd
得到这样的结果
/c/Users/<windows_username>
现在将您的公钥和私钥复制到此路径
C:\Users\<windows_username>\.ssh
我得到了下面的文件
id_rsa id_rsa.pub known_hosts
在这里
现在,当它需要使用凭据时,它使用这些文件并在需要时提示输入密码。
如果你是windows 10 + TortoiseGit 2.7用户:
当更新到Git for Windows 2.35.1.windows时。2从一个旧的主要版本,你可能想做以下事情:
启动Git CMD
git credential-manager-core configure
这应该给出如下响应:
配置组件“Git凭据管理器”…
正在配置组件“Azure Repos提供商”…
现在,当启动下一个Git操作时,Git将只要求您选择一个帐户一次,存储它并在下一个操作中重用它。