在Github使用SSH连接仓库
首先,
使用ssh-keygen生成新的ssh密钥对,选择新的存放路径并设置密码。示例代码如下:
ssh-keygen -f YourKeyPairPath -t rsa -b 2048
然后,
为git bash设置自动启动脚本,然后启动Git bash。如果密钥对已加密,它会自动运行ssh-askpass程序询问密钥密码,用户需要手动输入。
可以参照Github的文档编写如下脚本,然后存储在C:\Users\Administrator\.profile:
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2=agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add ThisIsYourKeyPairPath
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add ThisIsYourKeyPairPath
fi
unset env
之后,运行 ssh -T git@github.com 指令测试连接。如果连接返回以下文本,说明测试正确:
Hi rainsdm! You've successfully authenticated, but GitHub does not provide shell access.
备注
由于有消息称RSA-2048已被量子计算机破解,因此rsa算法的位数需要达到4096位,每个月换一次。
如果要使用Gitee,任然使用上述脚本,但是需要判断全局配置的邮件值分析是哪个平台,然后根据对应的平台使用相应的SSH密钥对。邮件值需要在脚本中手动设置。
版权所有:长生之蓝
文章标题:在Github使用SSH连接仓库
文章链接:https://www.snowdreamsblog.cn/program_expertise/7.html
本站文章均为原创,未经授权请勿用于任何商业用途
文章标题:在Github使用SSH连接仓库
文章链接:https://www.snowdreamsblog.cn/program_expertise/7.html
本站文章均为原创,未经授权请勿用于任何商业用途
扫描二维码,在手机上阅读