我开始使用Visual Studio Code,我试图将我的测试项目保存到GitHub,但Visual Studio Code总是要求我的GitHub凭据。
我已经在我的PC上安装了GitHub Desktop和Git。我已经跑了:
git config --global credential.helper wincred
但是Visual Studio Code仍然在要求凭证。
我该如何解决这个问题?
下面是我的.gitconfig文件,位于用户配置文件文件夹中:
[filter "lfs"]
clean = git-lfs clean %f
smudge = git-lfs smudge %f
required = true
[user]
name = ddieppa
[user]
email = fake@live.com
[credential]
helper = wincred
下面是弹出窗口要求凭据:
我在弹出窗口中输入了我的GitHub凭证,但仍然在Visual Studio Code中的Git输出窗口中得到这个错误:
remote: Anonymous access to ddieppa/LineOfBizApp.git denied.
fatal: Authentication failed for 'https://github.com/ddieppa/LineOfBizApp.git/'
(这个答案不是特定于GitHub,而是我使用BitBucket,但它也可以在GitHub中工作,因为概念是相同的)
就我而言,我使用的是Bitbucket应用程序密码,它总是要求我进行身份验证。
停止自动读取并不能解决问题,因为我一天要拉和推好几次,每次输入应用程序密码都很糟糕。
此外,我需要将应用程序密码存储在不安全的地方,这也是我不想使用凭证的原因。助手存储,它以明文存储密码,而不是使用凭据。助手wincred,它是加密的。
当对话框提示我使用浏览器而不是应用程序密码时,我要求使用浏览器登录,这是可行的,原因超出了我的理解。现在它不再要求凭据了(我不得不暂时改变我的默认浏览器,因为我工作时使用的bitbucket帐户不在我的默认浏览器中,对话框尝试使用默认浏览器进行身份验证)。
下面的步骤教你如何:
生成SSH密钥(不含密码短语**)
将第1步中生成的公钥添加到Git存储库中
确认以上步骤已成功完成
第一次提交(无需提供用户名/密码)
**如果您的工作特别敏感,生成没有密码短语的SSH密钥是不明智的。
OS - Fedora 28 |编辑器- Visual Studio Code v1.23.0 | Repository - Git
生成SSH密钥:
ssh -t rsa -C "email@goeshere.com"
输入保存密钥的文件:按“Enter”
Enter passphrase:按“Enter”
再次输入相同的密码短语:Press Enter
完成上述步骤后,您的公钥的位置将显示在终端窗口中。如果当前登录的用户是'bob',那么公钥的位置将是/home/bob/.ssh/id_rsa.pub
复制并导入公钥到GitHub:
猫/home/bob/.ssh/id_rsa.pub
将现在显示在终端窗口中的整个公钥复制到剪贴板
登录https://github.com并登录
单击界面右上角的用户图标,选择“设置”
单击“SSH”和“GPG”键
单击“新建SSH密钥”
输入标题,将复制到剪贴板的公钥粘贴在第一个项目符号中,单击“添加SSH密钥”
确认以上步骤:
ssh -T git@github.com
是的
嗨!您已成功验证,但GitHub不提供shell访问。
第一次提交/推送无需输入用户名/密码:
触摸用法
Git添加test.txt
Git提交-打开编辑器,输入消息并保存文件。如果你的编辑器是vi,打开文件后按I,输入消息,按Esc,然后输入:x保存修改。
git推
您可能遇到的唯一问题是当您尝试SSH到GitHub时。这个链接将提供一些帮助-
错误:代理程序承认签名失败
寻找快乐!