mirror of
https://github.com/ossrs/srs.git
synced 2025-02-13 11:51:57 +00:00
80 lines
2.3 KiB
Bash
Executable file
80 lines
2.3 KiB
Bash
Executable file
#!/bin/bash
|
||
|
||
echo "更新CSDN镜像的脚本"
|
||
|
||
# 创建CSDN镜像的过程如下:
|
||
# 1. 在CSDN上创建项目,从https://github.com/winlinvip/simple-rtmp-server拷贝过来。
|
||
# 2. 在本地虚拟机上:
|
||
# git clone git@code.csdn.net:winlinvip/srs-csdn.git
|
||
# 3. 创建同步的branch:
|
||
# git remote add upstream https://github.com/winlinvip/simple-rtmp-server.git
|
||
# git fetch upstream
|
||
# git checkout upstream/master -b srs.master
|
||
# 4. 执行本同步更新脚本,更新。
|
||
# bash scripts/csdn.mirror.sh
|
||
|
||
echo "argv[0]=$0"
|
||
if [[ ! -f $0 ]]; then
|
||
echo "directly execute the scripts on shell.";
|
||
work_dir=`pwd`
|
||
else
|
||
echo "execute scripts in file: $0";
|
||
work_dir=`dirname $0`; work_dir=`(cd ${work_dir} && pwd)`
|
||
fi
|
||
work_dir=`(cd ${work_dir}/.. && pwd)`
|
||
product_dir=$work_dir
|
||
|
||
# allow start script from any dir
|
||
cd $work_dir
|
||
|
||
. ${product_dir}/scripts/_log.sh
|
||
ret=$?; if [[ $ret -ne 0 ]]; then exit $ret; fi
|
||
ok_msg "导入脚本成功"
|
||
|
||
git remote -v|grep code.csdn.net >/dev/null 2>&1
|
||
ret=$?; if [[ 0 -ne $ret ]]; then
|
||
failed_msg "当前分支不是CSDN镜像";
|
||
cat <<END
|
||
创建CSDN镜像的过程如下:
|
||
1. 在CSDN上创建项目,从https://github.com/winlinvip/simple-rtmp-server拷贝过来。
|
||
2. 在本地虚拟机上:
|
||
git clone git@code.csdn.net:winlinvip/srs-csdn.git
|
||
3. 创建同步的branch:
|
||
git remote add upstream https://github.com/winlinvip/simple-rtmp-server.git
|
||
git fetch upstream
|
||
git checkout upstream/master -b srs.master
|
||
4. 执行本同步更新脚本,更新。
|
||
bash scripts/csdn.mirror.sh
|
||
END
|
||
exit 0;
|
||
fi
|
||
|
||
for ((;;)); do
|
||
git checkout srs.master && git pull
|
||
ret=$?; if [[ 0 -ne $ret ]]; then
|
||
failed_msg "更新github分支失败,自动重试";
|
||
continue
|
||
else
|
||
ok_msg "更新github分支成功"
|
||
fi
|
||
break
|
||
done
|
||
|
||
git checkout master && git merge srs.master
|
||
ret=$?; if [[ 0 -ne $ret ]]; then failed_msg "合并github分支失败, ret=$ret"; exit $ret; fi
|
||
ok_msg "合并github分支成功"
|
||
|
||
for ((;;)); do
|
||
git push
|
||
ret=$?; if [[ 0 -ne $ret ]]; then
|
||
failed_msg "提交CSDN分支失败,自动重试";
|
||
continue
|
||
else
|
||
ok_msg "提交CSDN分支成功"
|
||
fi
|
||
break
|
||
done
|
||
|
||
ok_msg "CSDN同步git成功"
|
||
|
||
exit 0
|