svn定时update Linux

55 阅读1分钟

说明:

我们想使用SVN在服务器上进行定时更新, 特备注一下

具体思考步骤,

1.首先使用svn命令行拉取代码到服务器上

2.写脚本进行更新, 判断脚本写的是否正确(具体的代码如下)

3.对个别工程需要重启的, 做单独处理

4.些定时任务


# 每周一到周六的8点到21点

* 8-21 * * 1-6 /bin/bash /xxx/xxx/svn-autoupdate.sh

具体代码


#!/bin/bash

# 防止出现乱码

export LANG="en_US.UTF-8"

# 可能会存在多个项目的

projects=("path1" "path2" "path3")

# 对多个项目进行循环更新

for project in ${projects[@]}; do

cd $project

# 打印svn更新的信息, 更改为自己的svn账户密码

upMsg=$(svn update --username {svnName} --password {svnPass}})

# echo $upMsg

# 根据更新的信息进行 识别, 如果包含 "Updated" 说明有更新的

result=$(echo $upMsg | grep "Updated")

# echo $project

# if [[ $result != "" ]]; then

# echo "更新了"

# else

# echo "没有更新"

# fi

# 对有更新的进行特别的处理

if [[ $project == "path2" ]] && [[ $result != "" ]]; then

# 需要进行特殊梳理的

# supervisorctl restart path

fi

done


End