diff --git a/getignore b/getignore index c82320c..471d7ea 100755 --- a/getignore +++ b/getignore @@ -1,25 +1,41 @@ #!/bin/bash #Создан: Вс 25 авг 2013 19:40:12 -#Изменён: Ср 28 авг 2013 20:24:59 +#Изменён: Сб 22 мар 2014 12:02:37 # Добавление файлов с меткой +GITIGNORE в исключения .git +# Создание копии файлов с меткой +GITIGNORE +SAMPLE +make_sample() { + \grep -E '^.{1,5}\+GITIGNORE \+SAMPLE' "$1" 2>&- > /dev/null && \ + if [ ! -f "${1/.sample/}.sample" ]; then + cp -iv $1 $1.sample + sed -i 's/\+GITIGNORE.\+SAMPLE/+SAMPLE/' $1.sample + fi +} + # Метка должна располагаться не далее пятой колонки -\grep -E '^.{1,5}\+GITIGNORE' -R > /tmp/gitignore.tmp +\grep -E '^.{1,5}\+GITIGNORE' -R --exclude-dir=var 2>&- > /tmp/gitignore.$$ if [ -f ".gitignore" ]; then while read line; do - echo lll $line - sed -i "/${line//\//.}/d" /tmp/gitignore.tmp 2> /dev/null + echo "COPY:" "$line" + make_sample "$line" + sed -i "/${line//\//.}/d" /tmp/gitignore.$$ 2> /dev/null done < .gitignore fi +if [ -f "/tmp/gitignore.$$" ]; then + while read line; do + make_sample "${line/:*/}" + done < /tmp/gitignore.$$ +fi + echo "\n# [ $(\date +%d.%m.%Y) ]\n" >> .gitignore -cut -d ':' -f 1 /tmp/gitignore.tmp | sort -u >> .gitignore +cut -d ':' -f 1 /tmp/gitignore.$$ | sort -u >> .gitignore echo >> .gitignore -\rm /tmp/gitignore.tmp +\rm /tmp/gitignore.$$