Это немного странно, так что у меня эта строчка в моем удаленном мерзавце крючков репо скрипте после приема:нечетного выполнения крюка сценарий на мерзавце
cd /path/to/my/deployed/app
git reset --hard
rm files/.development
И из моей локальной машины я толчок к моему мерзавца репо - вот что странно. Те линии, которые находятся в конце моего post-receive, выполняются на моем локальном компьютере, а не на моем удаленном сервере?
Очевидно, что я в конечном итоге получаю эту ошибку:
MacBook-Air:$ git push to-my-deployed-app
Counting objects: 23, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (16/16), done.
Writing objects: 100% (16/16), 2.56 KiB, done.
Total 16 (delta 11), reused 0 (delta 0)
remote: warning: updating the current branch
remote: fatal: Not a git repository: '.'
remote: rm: cannot remove `files/.development': No such file or directory
Так что .. очень странно ...
Если вы нажимаете на не-голый репозиторий и пытаетесь использовать этот крюк для обновления рабочего дерева после нажатия, вам следует рассмотреть сценарий 'post-update', связанный в [« Почему бы мне не увидеть изменения в удаленном репо после «git push»? »(https://git.wiki.kernel.org/index.php/GitFaq#Why_won.27t_I_see_changes_in_the_remote_repo_after_.22git_push.22.3F) Git FAQ. Он обрабатывает грязные рабочие деревья путем сложения перед сбросом (так что у вас есть хотя бы возможность восстановить любые изменения, сделанные непосредственно на сервере (вне Git)). –
спасибо за помощь. хотя мне не нужно беспокоиться о том, что на нашем сервере грязное дерево, так как в нем нет реинжинированных репо, но все просто подталкивают к этому живому репо. я просто хочу, чтобы мой скрипт запуска выполнялся правильно - обновление рабочего дерева. см. ниже мой последний комментарий для Марка. благодаря! – David