git 在使用 ssh,但端口不是默认 22
的时候是个很诡异的问题
每次都需要输入密码,而不是使用密钥登录
例如: git clone ssh://git@192.168.1.251:2022/changshu.li/demo.git
ssh 非22端口的时候 git clone 的地址一定要有 ssh:// 协议头部 !
解决方法是 在 .ssh/config 文件中 Host 使用个简单的别名如 gitlab
,同时分别配置 Hostname 和 Port, 如下
Host gitlab
User git
HostName 192.168.1.251
Port 2022
IdentityFile ~/.ssh/your_id_ras
然后地址 git clone ssh://git@gitlab/xxx/xxxx.git
即可,注意要有 ssh://
协议头!