前面使用了git、incron进行了网站的自动发布,但一个git版本系统里的多个分支要是同时发布在一台服务器上,则显得太冗余。因此需要处理多分支的自动发布方案。
在这里找到了办法
http://www.ekynoxe.com/git-post-receive-for-multiple-remote-branches-and-work-trees/
结合incron技术,最终的解决方法就是修改post-receive钩子
#!/bin/bash
while read oldrev newrev ref
do
branch=`echo $ref | cut -d/ -f3`
if [ "master" == "$branch" ]; then
date +"%Y-%m-%d %H:%M:%S" >> /home/wlx/westdc.git/hooks/westdc.update.lck
fi
if [ "heihedata" == "$branch" ]; then
date +"%Y-%m-%d %H:%M:%S" >> /home/wlx/westdc.git/hooks/heihedata.update.lck
fi
if [ "card" == "$branch" ]; then
date +"%Y-%m-%d %H:%M:%S" >> /home/wlx/westdc.git/hooks/card.update.lck
fi
done
时间: 2024-11-02 13:39:50