Как упоминал Крис, у вас, похоже, та же проблема, что и . Сброс на git push
.
В частности, перехваты запускаются с CWD
и GIT_DIR
, установленными в каталог .git
. Это приводит к тому, что команда checkout выполняется в .git
dir, и обычная ошибка об этом переопределяется.
Если вы выполните команду ls на пульте дистанционного управления .git
dir, вы должны найти там полную проверку.
Самый простой способ обойти это - указать GIT_WORK_TREE в начале команды извлечения:
GIT_WORK_TREE=/my/git/checkout git checkout -f
Сценарий, связанный Крисом (http://utsl.gen.nz/git/post-update), должен решить эту и некоторые другие потенциальные проблемы.