Normalmente eu acho que um dos dois primeiros comandos sai com um código diferente de zero. Mas isso impediria que todos os comandos a seguir fossem executados, e comandos não executados não poderiam gerar mensagens de erro ...
No entanto, você pode verificar o código de saída dos comandos com isto:
git fetch --all ; echo "exit code: ${?}"
git reset --hard ; echo "exit code: ${?}"
git merge ; echo "exit code: ${?}"
E ajudaria a executar o script por meio de
bash -vx ./update_content.sh