当我在Mac上运行时,一切正常:
git clone git@test.test-project.com:my_project
当我在家里运行并将我的家庭id_rsa.pub密钥复制到authorized_keys中的ssh项目时,ssh连接没问题,但克隆git repo需要密码,为什么?
重现的完整步骤:
git config --global user.name 'User Surname'
git config --global user.email 'user@email.com'
ls -al ~/.ssh # shows nothing
ssh-keygen -t rsa -C "user@example.com"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
sudo apt-get install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
将cliboard中的id_rsa.pub粘贴到github帐户 - &gt;设置 - &gt; ssh键 - &gt;添加并按Enter键,成功添加
ssh -T git@github.com
嗨用户!您已成功通过身份验证,但GitHub不提供shell访问权限。 将相同的id_rsa.pub粘贴到evernote
从我的工作mac,从evernote复制,并连接到ssh:
ssh portal@my-server.com
ee ~/.ssh/authorized_keys
将evernote中的id_rsa粘贴到文件末尾并保存文件。
cd my-rails-app/repo
git ls-remote
从stdout复制第一个字符串的一部分:
来自git@test.test-project.com:my_project
从家庭asus连接到ssh
ssh portal@my-server.com
一切都很好
git clone git@test.test-project.com:my_project
- &GT;所需密码
答案 0 :(得分:0)
如果未正确配置ssh密钥,则git clone“git @ {host}”会尝试以用户“git”连接到{host},因此请求输入密码。因此,您需要修复/解决ssh密钥问题。
您的工作/ mac /家用电脑是否有不同的用户名?你在使用gitolite,gitlab等吗?如何在git中配置ssh.pub?
请注意,如果(1)“当我在我的Mac上运行它时,一切正常”,然后(2)“在家里运行并复制我的家庭id-rsa pub在授权密钥“中使用ssh项目的关键,这对git没有意义。您只启用ssh登录为“you”,而不是“git”。最简单的解决方案是“从你的mac”复制你的私人ssh密钥,并将其复制到你的“家庭”计算机的〜/ .ssh目录中。否则,您只需将家用计算机作为新用户添加到git服务器的配置中。