Назад | Перейти на главную страницу

git push origin master результат: REJECTED_OTHER_REASON

Я сделал на своем сервере личный репозиторий. Я могу его клонировать. Я получаю ошибки при нажатии

отказ от обновления ....

...

Переменная конфигурации 'receive.denyCurrentBranch' на 'отказаться'.

...

! [rmeote rejected] master -> master (ветка в настоящее время проверена)

error: failet, чтобы отправить некоторые ссылки на 'ssh: // .....'

кто-нибудь может помочь разобраться в этом?

большое спасибо.

Проблема в том, что у вас master проверено на сервере, поэтому вы не можете нажать master к серверу. Есть три разных способа справиться с этим:

Правильный путь - начать все сначала с --bare репозиторий, если вы собираетесь работать удаленно. У голых репозиториев нет «рабочего дерева» / рабочего каталога, что означает, что в репозитории никогда не будут извлечены ветки на самом сервере. Видеть FAQ по Git:

никогда нажмите в репозиторий, к которому прикреплено дерево работ, пока вы не узнаете, что делаете

Самый простой способ заставить его работать с того места, где вы сейчас находитесь, - просто создать поддельную ветку и проверить ее на сервере, чтобы рабочий каталог на сервере был настроен на другую ветку, кроме master что вы никогда не будете пытаться подтолкнуть клиента.

Hard Way требует, чтобы вы создали триггер, который сбрасывает ваш рабочий каталог на сервере (вы потеряете все незафиксированные изменения на сервере) (пример запускать сценарий оболочки здесь) и настройте git, чтобы отключить ошибку, которую вы получили с git config receive.denyCurrentBranch ignore. Это используется, когда вы используете git для веб-страницы, которую редактируете удаленно.. Опять же, см. FAQ выше, если вы только отключите ошибку и не настроите обработчик post-receive, ваше рабочее дерево не будет обновлено для вас, и вам придется git reset --hard на сервере, если вы хотите увидеть файлы, которые вы туда поместили.