bash-it-a-day, custom plugin.
bash-it을 fork해서 나만의 저장소를 github에 만들고, 각 서버의 계정마다 clone해서 사용하고 있다. 손으로 fetch하는 일이 너무 귀찮아서 만들었다.
bash-it plugin
그래서 로그인 할 때 하루에 한번 fetch/merge를 수행하는 plugin을 만들었다:
function bash_it_a_day(){
local today=`date +%Y%m%d`
local file="/tmp/bash_it_a_day_$USER"
local truncated=""
if [ -f $file ]; then
local uname=`uname`
[ $uname = "Linux" ] && truncated=`date +%Y%m%d --reference=$file`
[ $uname = "Darwin" ] && truncated=`stat -t %Y%m%d -f %Sm $file`
fi
if [ "$truncated" != "$today" ]; then
cd $BASH
local git_pid=`ps -U $USER | grep git | grep -v grep | awk '{print $1}' | xargs`
if [ $git_pid = "" ]; then
git checkout mine
git fetch origin
git merge origin/mine
fi
> $file #truncate file
cd ~
fi
}
bash_it_a_day
이렇게 파일을 만들어서 $BASH/custom/bash-it-a-day.bash로 넣는다.
그러면 로그인할 때마다 fetch/merge를 하는데 하루에 한번만 한다.