Я как-то удалил весь каталог моей ветки кода. Я клонировал новый. Работало нормально, кроме нажатия.
~/workspace/wtf (mybranch)]$ git push origin mybranch
error: Cannot access URL [my url], return code 22
fatal: git-http-push failed
Git Pull работает, хотя. Как я могу это исправить?
http.receivepack
.Ответы:
Я сделал ошибку, используя https вместо ssh для свежей копии. С тех пор я вносил изменения и коммиты, но не мог настаивать по понятным причинам.
Чтобы восстановить, я просто изменил раздел [remote "origin"] в .git / config из
в
После этого я мог снова нажать.
источник
git-http-push failed
, что я вижу, что операционная система пытается установить что-то через http или https, -1.Быстрее HTTP Push только с git - webDAV не требуется
Новая поддержка "smart-http" начиная с git 1.6.6. Новый метод позволяет передавать весь пакет сразу, а не в виде отдельных файлов.
Вы также можете использовать gitweb для предоставления просматриваемых URL-адресов в том же месте.
Примечание. Поскольку доступ контролируется Apache, вы можете добавить любые требования Auth (htaccess или ldap и т. Д.) К настройке для каждого репозитория.
Этот ответ предполагает, что вы владеете удаленным сервером и хотите добавить / исправить поддержку http.
ПЕРВЫЙ: Проверьте журналы apache, вероятно, в разрешении отказано / невозможно найти ошибку, когда apache пытается выполнить сценарии cgi, поддерживаемые git-http.
Добавление поддержки HTTP в git
Просто создайте новый файл git_support.conf и включите его в apache (добавьте оператор include в httpd.conf)
Результатом является способность толкать / тянуть:
И вы можете просмотреть эти изменения в Интернете ..
Источник: http://repo.or.cz/w/alt-git.git?a=blob_plain;f=gitweb/README
источник
"SetEnv takes 1-2 arguments, an environment variable name and optional value to pass to CGI."
- почему?Чтобы включить « git push » через http, вы должны включить WebDAV на веб-сервере. Чтобы сделать это для Apache Webserver, просто отредактируйте файл конфигурации:
Затем найдите строку, начинающуюся с:
Добавьте следующую строку сразу после нее:
Убедитесь, что в httpd.conf есть следующая строка без комментариев:
После этого вы готовы. Перезапустите веб-сервер Apache, используя:
Также убедитесь, что все файлы репозитория git на сервере доступны для записи пользователю и группе pache: apache, используя:
В противном случае неправильная установка прав доступа приведет к «ошибке PUT: curl result = 22, HTTP code = 403» при выполнении «git push».
Теперь просто сделайте «git push» со своего клиентского компьютера, и все должно работать.
источник
Вы не можете нажать на репозиторий, который вы клонировали через HTTP. Вам необходимо обновить URL-адрес до
ssh://
или поgit://
типу URL.источник
git remote -v
?Отредактируйте следующий раздел вашего файла .git / config:
в
Тогда попробуй
git push origin master
.Измените данные аутентификации в файлах конфигурации для других URL-адресов хранилища, как требуется, и нажмите на нужную ветку.
источник
git remote set-url origin ...
работает так же.У меня была такая же проблема с операцией push с git-http-backend, конфигурацией аутентификации ldap.
Наконец я нашел решение и опишу его в этом вопросе о сбое сервера
Может быть, это поможет кому-то с подобной проблемой.
источник
большой
у меня были другие ошибки, но это работает!
я пытаюсь объяснить:
Could not LOCK /path/to/www/gitproject/refs/heads/master due to a failed precondition (e.g. other locks)
user1520409
ist works.НО как скрыть пароль от текста при нажатии на сообщение?
источник
Это также может произойти, если вы ввели неправильный пароль.
источник
fatal: Authentication failed
первым