🐵个人主页:ximury.blog.csdn.net 🐸Github:github.com/ximury 🐹精言佳句:天若有情天亦老,月如无恨月长圆
fatal: 无法访问 ‘https://github.com/…’:GnuTLS recv error (-54): Error in the pull function.
fatal: 无法访问 ‘https://github.com/…’:Failed to connect to github.com port 443: 拒绝连接
在使用github推送或拉取代码的时候,你有没有经常遇到这类问题?
一般,我们多次尝试之后,就能成功了!
但是,多多少少会有些麻烦,作为一名程序猿,怎么能做重复工作呢!!
因此,我写了一个简单的脚本,在git push 往GitHub推送代码时,会检测推送结果,如果失败了,自动进行再次尝试推送,直至成功或达到最大次数限制!
#!/bin/bash
for ((i=1;i<=10;i++))
do
echo "now trying connect num: $i"
d=$(date)
echo $d
result="$(git push origin -f)"
res=$?
echo $res
if [[ $res != *[^0-9]* ]]&&[[ $res != 0* ]];
then
echo $res is int
else
echo $res is string
fi
if [[ $res == 0 ]];
then
echo "break!" && break
else
echo -e "not yet submitted, continue~\n"
fi
done
其中,核心是res=$? ,$? 的作用是获取上个命令执行的结果。
0:代表成功;
1:代表有冲突,一般是:更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支;
128:代表连接GitHub失败;
…
|