公钥与私钥
通过指令生成公钥与私钥。
登录 GitHub,进入 Settings (设置) → SSH and GPG keys,点击 New SSH key,将公钥内容粘贴进去。
仓库设置
将仓库的 URL 设置成为 ssh 协议的 URL,而不是 HTTPS 协议的 URL。
git remote set-url origin git@github.com:user/repo.git设置 ssh-agent
为了不用一直输入密码,用 ssh-agent 来管理。
验证
ssh -T git@github.com代理问题
如果开启代理,可能无法正常使用。
设置 ssh config
先安装 nmap,sudo pacman -S nmap,nmap 中包含了下面要使用的 ncat。
接着编辑 ~/.ssh/config 文件:
Host github.com
User git
ProxyCommand ncat --proxy-type socks5 --proxy 127.0.0.1:7890 %h %p
ServerAliveInterval 60但是机场依旧可能不支持 ssh(端口 22)的连接。
现在的流程是:
ssh → ncat → Clash → 代理节点 → 连接被节点拒绝 → Connection closed
所以接下来就要解决代理节点的问题,设置规则,让 github 不使用代理,使用 direct。
更改 config.yaml 文件:
rules:
# 把这行加在最上面
- DOMAIN-KEYWORD,github,DIRECT