Emular o comportamento apenas do ff no Git 1.6.0.2

0

Eu tenho o seguinte problema em um de nossos servidores: Eu quero um usuário que receba um repositório do Git regularmente (usando um cronjob), mas fazendo apenas pull-ups (o conteúdo no servidor muda algumas vezes, também). Com o moderno Git (1.6.6 e mais recente), posso simplesmente fazer

git pull --ff-only origin master

mas como só tenho o 1.6.0.2 instalado, não posso fazer isso. Eu pensei que poderia contornar isso fazendo

git config merge.ff only
git pull origin master

mas, como se viu, isso não funcionou (sem erro, ainda assim se funde). Alguma idéia de como posso resolver isso?

    
por Nils Werner 02.07.2014 / 14:30

1 resposta

0

Eu encontrei uma solução para isso verificando manualmente se a ramificação atual ( master ) é realmente um descendente da ramificação a ser mesclada ( origin/master ):

git fetch origin
if [ $(git branch --contains master -a | grep origin/master) ]
then
    git merge origin/master
else
    echo "No fast-forward, aborting merge"
fi
    
por 02.07.2014 / 17:22