Я пытаюсь настроить git post-update hook в среде Windows. Вот код:Ошибка Git post-update «Не каталог»
#!/bin/sh
cd /c/inetpub/vhosts/mywebsite || exit
unset GIT_DIR
git pull hub master
exec git-update-server-info
Когда я запускаю это из оболочки (sh post-update), все работает отлично. Но после нажатия у меня есть ошибка:
hooks/post-update: line 7: cd: /c/inetpub/vhosts/mywebsite: Not a directory
Что я делаю неправильно?
Когда вы находитесь в оболочке * Git Bash *, что произойдет, если вы попытаетесь выполнить 'cd/c/inetpub/vhosts/mywebsite'? –
Все работает так, как ожидалось, текущий каталог изменился на/c/inetpub/vhosts/mywebsite. – breethe
что вы получаете, если вы используете 'echo $ USER' в своей оболочке, и если вы положите это на свой скрипт hook и сделаете push? Означает ли это то же самое? Кроме того, если вы измените абсолютный путь '/ c/inetpub/vhosts/mywebsite' на относительный путь, это работает? (Для этого имейте в виду, что скрипты hook выполняются в корневой директории репозитория, например, если ваш скрипт hook - '/ c/repos/repo.git/hooks/post-update', то он выполняется в'/c/repos/repo.git'.) – janos