升级到Xcode 7的一个不愉快的副作用是我不能再推送到我的Gitlab回购。在过去的两年里,我一直在推动和拉动我的项目,所以我怀疑Xcode 7正在做一些不同的事情。我通过Web界面登录和退出Gitlab验证了我的u / p。当我去Xcode>偏好>帐户,选择gitlab项目,我看到用户名和密码在那里(就像他们已经2年一样)并且我验证它们是正确的。
值得注意的是,我可以成功地从终端发帖,但是,我不希望使用终端将我的代码定期推送到Gitlab。升级后有没有其他人遇到过这个问题?有关修复的任何建议吗?
我得到的具体错误是“身份验证失败,因为用户名或密码不正确”。此错误出现在“帐户”对话框中,以及尝试执行推送到gitlab repo后。
答案 0 :(得分:7)
所以这个人非常吵架,说实话,我不确定这个错误的根本原因是什么,但我解决它的方式是:
瞧!工作。这绝对是核选择,但它让我再次工作。我坚信将Xcode升级为7会搞砸了。如果其他人有这个问题,我希望这能解决它!
答案 1 :(得分:3)
与xcode 7相同的问题。
我设法通过重新生成RSA密钥并在Gitlab中更新它来解决这个问题。
编辑:遗憾的是,这只有一次
Edit2:在更改SSH密钥后“开箱即用”工作一次后,我第二次收到登录凭据的问题,您可以在对话框中选择用户名/密码和SSH密钥。选择SSH密钥然后工作。之后,对话框不再出现了。
所以,总结一下:
答案 2 :(得分:2)
我发现Xcode 7不再喜欢在URL中倾斜“〜”了。请运行“git config --list”并检查URL。例如,我的远程URL看起来像这样:
ssh://nobody@nowhere.com/~/product1.git
运行以下命令后,Xcode可以正常运行:
git remote set-url origin ssh://nobody@nowhere.com/home/nobody/product1.git
git config branch.master.remote ssh://nobody@nowhere.com/home/nobody/product1.git
答案 3 :(得分:1)
我的问题是Xcode尝试使用错误的密钥文件:.ssh / id_rsa而不是.ssh / id_dsa
答案 4 :(得分:1)
我的问题是id_rsa是一个象征性的链接。
我的.ssh / id_rsa文件是另一个文件的符号链接。在xcode中,我已将此符号链接指定为我的ssh私钥文件。
在这个配置中,git pull正在运行,但是git push失败了。
然后,在xcode中,我将ssh私钥文件更改为指向常规文件(符号链接指向的文件)。瞧,推拉都在起作用。
Xcode版本8.1(8B62)