简单git项目定时提交
建立shell脚本
#! /usr/bin/env bash
base_dir="/home"
proj_name="alicloud" # 项目名称
log_dir="/home/scheduler"
log_name="ghost_logs.txt" # 提交纪录的log
# cd "$base_dir"
# echo $base_dir
now_date=`date '+%Y-%m-%d %H:%M:%S'`
today=`date '+%Y_%m_%d'`
if [ ! -f "$log_dir/$log_name" ]; then
touch "$log_dir/$log_name"
fi
echo -e >> "$log_dir/$log_name"
if [ -d "$base_dir/$proj_name" ]; then
echo "$now_date 进项目" >> "$log_dir/$log_name"
cd "$base_dir/$proj_name"
else
echo "$now_date dir not found" >> "$log_dir/$log_name"
exit 1
fi
# echo `git status` >> "$log_dir/$log_name"
git add .
if [ $? -eq 0 ]; then
echo add success >> "$log_dir/$log_name"
else
echo add fail >> "$log_dir/$log_name"
exit 1
fi
git commit -m "自动提交$today"
if [ $? -eq 0 ]; then
echo "commit success" >> "$log_dir/$log_name"
else
echo "commit fail" >> "$log_dir/$log_name"
exit 1
fi
git push origin master
if [ $? -eq 0 ]; then
echo "push success" >> "$log_dir/$log_name"
else
echo "push fail" >> "$log_dir/$log_name"
exit 1
fi
crontab设置定时任务
crontab -e 在其中创建定时任务, 有三分钟延迟
crontab –e //修改 crontab 文件,如果文件不存在会自动创建。
crontab –l //显示 crontab 文件。
crontab -r //删除 crontab 文件。
crontab -ir //删除 crontab 文件前提醒用
59 23 * * * bash /home/scheduler/ghost.sh # 晚上11点59提交