Я запустил сервер gitlabhq rails на виртуальной машине, выполнив 1-6 шагов из этого урока https://github.com/gitlabhq/gitlab-recipes/blob/master/install/centos/README.md и запуская команду сервера rails, выполняющую команду sudo -u git -H bundle exec rails s -e production
. После этого я создал пользователя, используя инструменты администратора и создал новый проект под этим пользователем. Затем я пытаюсь подтолкнуть существующий проект к этому репо, как всегда. Но на последнем этапе, git push origin master
завершается с ошибкойОшибка Git push pre-receive hook отклонен
[remote rejected] master -> master (pre-receive hook declined)
Дополнительная информация:
1) Я не активировали пользователь (владелец проекта) через ссылку активации электронной почты, потому что я не настроен почтовый сервис на стороне сервера, и я не нашел инструкции, как это сделать в этом руководстве.
2) Сервер Gitlab генерирует советы о том, как перенаправить проект на репо, и нет пути repositories/
. Я имею в виду, что он генерирует [email protected]:user/repo.git
вместо [email protected]:repositories/user/repo.git
, что является правильным.
3) Когда я пытался отладить ее, я открыл pre-receive
скрипт внутри репо на сервере и попытался выходных переменных (есть три из них): refs = ARGF.read
, key_id = ENV['GL_ID']
и repo_path = Dir.pwd
и обнаружили, что KEY_ID всегда пусто. Может быть, проблема здесь ... Если да, пожалуйста, дайте мне советы о том, как это исправить. Спасибо
Это не помогло. :(Протестировано на обоих учетных записях - root и myuser на vm и локальной машине соответственно – Hroft
проверить git remote -v, добавлен ваш git repo или нет? –
'git remote -v' выходы: origin \t git @ mygitlabhost: репозитории/user/repo.git (fetch) origin \t git @ mygitlabhost: репозитории/пользователь/repo.git (push) – Hroft