我有多个存储库可供选择-有些存储在Github上,有些存储在Assembla上。从技术上讲,我的用户名在两个系统之间有所不同。
当我cd
访问给定存储库的内容时,我需要了解以下内容:
git config user.name
,不是 git config --global user.name
)我发现可以git config --get user.name
产生正确的信息,但是当我尝试拉入或提交时,系统提示我输入用户名:
Username for 'https://github.com'
如何确保我的身份正确链接到两个git world?我意识到#1与SSH密钥无关,但是提交(尽管这是我的设置的一部分),因此我将其包括在这里以供我尝试完成的工作参考。
首先,user.name,user.email的配置值与对服务器的身份验证无关(允许您进行推送,提取等),这些仅用于使用作者信息填充提交消息
一个您可以做的就是创建一个ssh密钥对,并为assembla和github使用相同的公钥。然后,从github克隆存储库时,请确保使用SSH协议
[email protected]:username/repositoryname.git
代替
https://github.com/username/repositoryname
(对于assembla同样)
如果配置正确,则不会要求您输入用户名或密码
注意:[email protected]:username / repositoryname.git是ssh://[email protected]:username / repositoryname.git的简写,含义相同
注意2:关于git-scm的书在这里解释了SSH协议(以及其他):http ://git-scm.com/book/en/Git-on-the-Server-The-Protocols,github总是使用“ git”用户名并使用ssh密钥标识github用户
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句