1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-02-13 20:01:56 +00:00
srs/trunk/scripts/_mirror.utils.sh
2014-10-27 12:56:04 +08:00

95 lines
2.7 KiB
Bash
Executable file
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
#############################################
# help for the first checkout.
#############################################
function first_checkout()
{
mirror_name=$1
git_url=$2
project_dir=$3
sync_script=$4
failed_msg "当前分支不是${mirror_name}镜像";
cat <<END
创建${mirror_name}镜像的过程如下:
1. 在${mirror_name}上创建项目,
可创建空项目或从https://github.com/winlinvip/simple-rtmp-server拷贝过来。
2. 在本地虚拟机上:
git clone $git_url
cd $project_dir && git checkout master && git branch 1.0release && git push origin 1.0release
3. 创建同步的branch
git remote add upstream https://github.com/winlinvip/simple-rtmp-server.git
git fetch upstream
git checkout upstream/master -b srs.master
git checkout upstream/1.0release -b srs.1.0release
4. 执行本同步更新脚本,更新。
bash $sync_script
END
}
#############################################
# branch master
#############################################
function sync_master()
{
for ((;;)); do
git checkout srs.master && git pull
ret=$?; if [[ 0 -ne $ret ]]; then
failed_msg "(master)更新github分支失败自动重试";
continue
else
ok_msg "(master)更新github分支成功"
fi
break
done
git checkout master && git merge srs.master
ret=$?; if [[ 0 -ne $ret ]]; then failed_msg "(master)合并github分支失败, ret=$ret"; exit $ret; fi
ok_msg "(master)合并github分支成功"
}
#############################################
# branch 1.0release
#############################################
function sync_1_0_release()
{
for ((;;)); do
git checkout srs.1.0release && git pull
ret=$?; if [[ 0 -ne $ret ]]; then
failed_msg "(1.0release)更新github分支失败自动重试";
continue
else
ok_msg "(1.0release)更新github分支成功"
fi
break
done
git checkout 1.0release && git merge srs.1.0release
ret=$?; if [[ 0 -ne $ret ]]; then failed_msg "(1.0release)合并github分支失败, ret=$ret"; exit $ret; fi
ok_msg "(1.0release)合并github分支成功"
}
#############################################
# push
#############################################
function sync_push()
{
mirror_name=$1
for ((;;)); do
git push
ret=$?; if [[ 0 -ne $ret ]]; then
failed_msg "提交${mirror_name}分支失败,自动重试";
continue
else
ok_msg "提交${mirror_name}分支成功"
fi
break
done
git checkout master
ok_msg "${mirror_name}同步git成功"
}