#!/bin/sh
log="$PWD/hooks/push.log"
protected_branch="master"
policy="nemate opravneni"
allow="uzivatel"
 
do_exit(){
  echo "! ! ! ! ! ! !"
  echo $policy
  echo "! ! ! ! ! ! !"
  echo $policy >> $log
  exit 1
}
 
while read oldrev newrev refname
do
    uname=$(git log $refname)
    branch=$(git rev-parse --symbolic --abbrev-ref $refname)
    if [ "$protected_branch" = "$branch" ]; then
        un=$(git log -1 --pretty=format:%an $newrev)
        echo "Zapis do $protected_branch uzivatelem $un" >> $log
        if [ "$allow" != "$un" ]; then
             #echo $policy >> $log
             policy="\nUživatel $un. Nemáte oprávnění zapisovat do větve: $protected_branch \n"
             do_exit
        fi
    fi
done
 
unset do_exit
 
exit 0

  • it/git/master_no_push.txt
  • Poslední úprava: 2017/01/19 23:41
  • autor: kourim