Мне удалось клонировать копию этого репозитория с проверкой подлинности по протоколу HTTPS. Я сделал несколько коммитов и хочу вернуться на сервер GitHub. Использование Cygwin на Windows 7 x64.
C:\cygwin\home\XPherior\Code\lunch_call>git push
Password:
error: The requested URL returned error: 403 while accessing https://MichaelDrog
alis@github.com/derekerdmann/lunch_call.git/info/refs
fatal: HTTP request failed
Также настройте его с подробным режимом. Я все еще довольно сбит с толку.
C:\cygwin\home\XPherior\Code\lunch_call>set GIT_CURL_VERBOSE=1
C:\cygwin\home\XPherior\Code\lunch_call>git push
Password:
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
* Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
CApath: none
* SSL connection using AES256-SHA
* Server certificate:
* subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
* start date: 2011-05-27 00:00:00 GMT
* expire date: 2013-07-29 12:00:00 GMT
* subjectAltName: github.com matched
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
* SSL certificate verify ok.
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
< WWW-Authenticate: Basic realm="GitHub"
<
* Ignoring the response-body
* Expire cleared
* Connection #0 to host github.com left intact
* Issue another request to this URL: 'https://MichaelDrogalis@github.com/dereker
dmann/lunch_call.git/info/refs?service=git-receive-pack'
* Couldn't find host github.com in the _netrc file; using defaults
* Re-using existing connection! (#0) with host github.com
* Connected to github.com (207.97.227.239) port 443 (#0)
* 0x23cb740 is at send pipe head!
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs?service=git-receive-pack HTTP/1.1
Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
< HTTP/1.1 401 Authorization Required
< Server: nginx/1.0.4
< Date: Thu, 15 Sep 2011 22:44:41 GMT
< Content-Type: text/plain
< Connection: keep-alive
< Content-Length: 55
* Authentication problem. Ignoring this.
< WWW-Authenticate: Basic realm="GitHub"
* The requested URL returned error: 401
* Closing connection #0
* Couldn't find host github.com in the _netrc file; using defaults
* About to connect() to github.com port 443 (#0)
* Trying 207.97.227.239... * 0x23cb740 is at send pipe head!
* Connected to github.com (207.97.227.239) port 443 (#0)
* successfully set certificate verify locations:
* CAfile: C:\Program Files (x86)\Git/bin/curl-ca-bundle.crt
CApath: none
* SSL re-using session ID
* SSL connection using AES256-SHA
* old SSL session ID is stale, removing
* Server certificate:
* subject: 2.5.4.15=Private Organization; 1.3.6.1.4.1.311.60.2.1.3=US; 1.
3.6.1.4.1.311.60.2.1.2=California; serialNumber=C3268102; C=US; ST=California; L
=San Francisco; O=GitHub, Inc.; CN=github.com
* start date: 2011-05-27 00:00:00 GMT
* expire date: 2013-07-29 12:00:00 GMT
* subjectAltName: github.com matched
* issuer: C=US; O=DigiCert Inc; OU=www.digicert.com; CN=DigiCert High Ass
urance EV CA-1
* SSL certificate verify ok.
* Server auth using Basic with user 'MichaelDrogalis'
> GET /derekerdmann/lunch_call.git/info/refs HTTP/1.1
Authorization: Basic xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
User-Agent: git/1.7.4.3282.g844cb
Host: github.com
Accept: */*
Pragma: no-cache
* The requested URL returned error: 403
* Expire cleared
* Closing connection #0
error: The requested URL returned error: 403 while accessing https://MichaelDrog
alis@github.com/derekerdmann/lunch_call.git/info/refs
fatal: HTTP request failed
Вот версии git и curl, которые у меня есть:
C:\Users\XPherior>git --version
git version 1.7.4.msysgit.0
C:\Users\XPherior>curl --version
curl 7.21.7 (amd64-pc-win32) libcurl/7.21.7 OpenSSL/0.9.8r zlib/1.2.5
Protocols: dict file ftp ftps gopher http https imap imaps ldap pop3 pop3s rtsp
smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI libz
Ответы:
У меня такая же проблема, и я выяснил причину.
Github, кажется, поддерживает только ssh способ чтения и записи репозитория, хотя в https также отображается «Read & Write».
Поэтому вам нужно изменить конфигурацию репо на вашем ПК на ssh:
.git/config
файл в вашей директории репоurl=
запись в разделе[remote "origin"]
url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git
наurl=ssh://git@github.com/derekerdmann/lunch_call.git
. то есть измените все тексты перед@
символом наssh://git
config
файл и выйдите. теперь вы можете использоватьgit push origin master
для синхронизации репо на GitHubисточник
.git/config
была больше похожа,url=https://github.com/mynickname/my_repo.git
но я тоже изменил ее,url=ssh://git@github.com/mynickname/my_repo.git
и она сделала свое делоgit remote set-url
команды. Смотрите мой ответ ниже.git remote set-url <name> git@github.com:<username>/<repo>.git
Чтобы определенно иметь возможность войти в систему с использованием
https
протокола, вы должны сначала установить свои учетные данные для аутентификации в git Remote URI :Тогда вам будет предложено ввести пароль при попытке
git push
.На самом деле, это в формате аутентификации http. Вы также можете установить пароль:
Вы должны знать, что если вы сделаете это, ваш пароль на github будет сохранен в виде открытого текста в вашем каталоге .git, что, очевидно, нежелательно.
источник
https://youruser:password@github.com/user/repo.git
несмотря на небезопасностьОдно небольшое дополнение к ответу Шона .
Вместо того, чтобы редактировать
.git/config
файл вручную, вы можете использоватьgit remote set-url
команду.В вашем случае это должно быть:
Я считаю это проще и чище, чем возиться с дот-файлами.
источник
git remote set-url origin ssh://git@github.com:derekerdmann/lunch_call.git
двоеточие между github.com и именем репоОтредактируйте
.git/config
файл в вашей директории репоНайти
url=
запись в разделе[remote "origin"]
Измените это с
url=https://github.com/rootux/ms-Dropdown.git
наhttps://USERNAME@github.com/rootux/ms-Dropdown.git
где
USERNAME
твое имя пользователя githubисточник
.git/config
установлен на « github.com/myrepo/subproject» .Другие ответы, которые предлагают переключиться на SSH, упускают из виду. HTTPS поддерживается, но вы должны войти в систему с вашим паролем GITHUB, а не вашей парольной фразой SSH (именно это и дало мне точно такую же ошибку).
У меня возникла та же проблема, но использование моего действительного пароля GitHub в строке ввода пароля терминала устранило решение без изменения конфигурации или обращения к SSH.
Причина, по которой это важно отметить, заключается в том, что многие государственные учреждения (например, моя школа) будут блокировать SSH, но разрешать HTTPS (это единственная причина, по которой я начал клонировать поверх HTTPS).
Надеюсь, что это помогает кому-то еще с той же проблемой ...
источник
git push
меня просят о au и p, и результат - отказано в разрешении .... Вы знаете, что я пропускаю?Та же ошибка и разрешение в Mac OS X.
Все работало нормально, пока я не создал новую учетную запись на GitHub и не попытался нажать
И получил ошибку:
удаленный: разрешение для NEWUSER / NEWREPO.git запрещено OLDUSER. фатальный: невозможно получить доступ https://github.com/NEWUSER/NEWREPO.git/ »: запрошенный URL вернул ошибку: 403
Это должно быть исправлено путем установки user.name для глобального или текущего репо
Но это не так.
Я исправил это, удалив OLDUSER, связанный с GitHub, из приложения Keychain Access в разделе пароли. Затем команда push прошла успешно.
ссылка
источник
Если вы используете Windows, иногда это может произойти, потому что Windows хранит учетные данные для внешнего репо (в нашем случае github) в своем собственном хранилище. И сохраненные там учетные данные могут отличаться от тех, которые вам нужны прямо сейчас.
Поэтому, чтобы избежать этой проблемы, просто найдите github в этом хранилище и удалите сохраненные учетные данные. После этого во время нажатия git запросит ваши учетные данные и позволит вам нажать.
источник
control panel > user accounts > credential manager > Windows credentials > Generic credentials
« Подробности из этого поста: stackoverflow.com/a/37450495Это работает для меня -:
Надеюсь, поможет
источник
<username>@
передgithub.com
удаленным URL). Спасибо!Я думаю, что @deepwaters получил правильный ответ для более старых версий. URL-адрес HTTPS должен иметь имя пользователя. У меня был git 1.7.0.4, и я
git push origin master
даже не спрашивал пароль, пока не добавил его.источник
Обнови свой мерзавец. GitHub ответил на этот вопрос по адресу https://help.github.com/articles/error-the-requested-url-returned-error-403 .
источник
Код 403 - «Запрещено». Сервер увидел ваш запрос и отклонил его. У вас есть разрешение отправить в этот репозиторий?
источник
У меня на самом деле было очень простое решение этой проблемы. Все, что я сделал, это изменил конфигурационный файл git по-другому после клонирования репозитория. URL удаленного источника - это то, что вам нужно отредактировать в файле конфигурации по умолчанию . Это должно выглядеть как показано ниже
источник
Догадаться. Я клонировал по HTTPS. Установка моих открытых ключей SSH, клонирование по SSH и проталкивание по SSH исправили это.
источник
После этого наш "Push to Git" работал нормально.
источник
Просто добавьте ваше имя пользователя в URL, как это: https: //islam9@github.com/islam9/bootstrap-rtl
пожалуйста, проверьте: http://islamkhalil.wordpress.com/2012/12/06/github-error-pushing-to-git-returning-error-code-403-fatal/
источник
Сделайте это для временного исправления
git push -u https://username:password@github.com/username/repo_name.git master
источник
Я столкнулся с той же ошибкой, и причина была глупой - у меня не было привилегий для фиксации в выбранном репозитории. Я не знал, что я должен
как описано в https://help.github.com/categories/63/articles
источник
Для тех, у кого есть разрешение на ошибку 403 при использовании ssh (согласно Xiao ) или http urls, попробуйте эти команды
с правами администратора
источник
git config --global credential.helper store
.изменить это с
в
Оно работает!
Не забывайте про «мерзавец» перед «@».
источник
git config --global http.proxy http://proxyUsername:proxyPassword@proxy.server.com:port
затем используйте командуgit remote set-url origin
для переключения адреса.Для любого любопытного, мой компьютер Mac против lucid vm запускал git 1.7.6 против 1.7.0.4, и точно такой же репозиторий можно было перенести с моего mac (более новый git), но не с виртуальной машины
Та же самая версия. Возможно, некоторые старые версии git не поддерживают нажатия https?
источник
url=https://username@github.com/username/repo.git
Добавьте имя пользователя как часть URL-адреса, и эта ошибка возникает из-за того, что команда git выполняет http вместо https. Так что установите URL
После чего вам будет предложено ввести пароль:
источник
Что сработало для меня:
Мой репо был вилкой и все еще был связан с репо родителей.
Скажу вам, если это ваш репо или нет.
Позволяет перенастроить его на репо, а затем разрешить пуш.
источник
Ни один из приведенных выше ответов не работал для моей
enterprise
учетной записи GitHub. Выполните следующие шаги для проталкивания через способ генерации ключей ssh.Создайте репо, посетив свой git аккаунт.
Создать ключ SSH:
Скопируйте содержимое файла ~ / .ssh / id_rsa.pub в ключи SSH в настройках учетной записи GitHub. Тестовый ключ SSH:
Теперь перейдите в вашу папку git clone и выполните:
Теперь попробуйте отредактировать файл (попробуйте README) и затем выполните:
Обновление: новая версия git, похоже, рекомендует не иметь никаких файлов при создании нового репо. Отсюда сделать пустой репо.
источник
Я выяснил свой вариант этой проблемы.
Проблема не в том, чтобы изменить протокол с https на ssl, а в том, чтобы установить глобальное имя пользователя и адрес электронной почты Github! (Я пытался подтолкнуть к частному хранилищу.
источник
Github имеет страницу, посвященную устранению этой ошибки:
https://help.github.com/articles/https-cloning-errors
В моем случае оказалось, что использование новой версии git (1.8.5.2) решило эту проблему.
источник
У меня была эта проблема прямо сейчас, и оказалось, что мой файл сервера /etc/resolver.conf имеет неверный IP-адрес. Мог бы помочь другим.
источник
Это случилось со мной, потому что мой коллега случайно отключил хранилище, из которого был создан этот репозиторий. Просто проверьте, действительно ли существует репозиторий git (hub).
источник
Это может быть проблема бухгалтерского учета. Учетная запись Github владельца репо (частного) не может быть финансовой. Я видел это там, где истек срок действия кредитной карты клиента.
источник
то, что работало для меня, меняется с http на ssh:
затем проверьте это с
git remote -v
источник
Я была такая же проблема. Мой случай был: я инициализировал git repo локально, прежде чем создал его на github, затем попытался добавить удаленную ветку. Я решил свою проблему, изменив порядок действий: создал репо на сайте github, а затем инициировал его локально. Но это не тот случай, когда им нравится делать все из командной строки, как я.
источник