Git 使用ssh访问存储库
昨天我发现了git这类东西的存在。我需要使用ssh访问远程存储库。我使用了命令Git 使用ssh访问存储库,git,ssh,Git,Ssh,昨天我发现了git这类东西的存在。我需要使用ssh访问远程存储库。我使用了命令$git clonegit@forest.com:stranger@gmail.com。但当我使用它时,它会说这是克隆,然后需要密码。虽然我在~/.ssh.com中有密钥和发布密钥,而且我还有一个配置文件,但看起来是这样的: Host forest User git HostName forest.com Port 22 IdentityFile ~/.ssh/<stranger@
$git clonegit@forest.com:stranger@gmail.com
。但当我使用它时,它会说这是克隆,然后需要密码。虽然我在~/.ssh.com中有密钥和发布密钥,而且我还有一个配置文件,但看起来是这样的:
Host forest
User git
HostName forest.com
Port 22
IdentityFile ~/.ssh/<stranger@gmail.com>.key
宿主林
用户git
主机名forest.com
端口22
IdentityFile~/.ssh/.key
你能给我一个提示吗,我如何访问这个远程存储库,为什么我需要这个配置文件,我可以用它做什么?由于你的密钥没有标准名称,你需要使用配置文件。
但确切的url是:
git clone forest:yourRepo
密钥“forest
”引用了~/.ssh/config
文件中的主机条目,它将为ssh提供正确的用户、主机名、端口和私钥文件
YourRepo
应该是要克隆的回购协议的名称或完整路径。我怀疑您的回购协议名为
stranger@gmail.com
其他问题包括:
- 配置文件的名称:
无需扩展:
。ssh将忽略任何其他内容~/.ssh/config
- 私钥的名称:
我强烈建议避免使用其中的“
”,并使用完整路径:@
和/home/myName/.ssh/myKey
(用于私钥和公钥)。/home/myName/.ssh/myKey.pub
然后,您的
应该引用密钥,不带任何扩展名:IdentityFile
:这是私有密钥(与公共密钥相反:/home/myName/.ssh/myKey
)/home/myName/.ssh/myKey.pub
~/.ssh/config
我在~/.ssh/config.txt和~/.ssh/config/config.txt的两个位置添加了它,以确保这是错误的吗?@user3130843我确认:不需要扩展:~/.ssh/config
。ssh将忽略任何其他内容。所以不应该有任何其他问题?