Нажатие на Git возвращает код ошибки 403 фатальный: HTTP-запрос не удался
я смог клонировать копию этого РЕПО через аутентификацию HTTPS. Я сделал несколько коммитов и хочу вернуться на сервер GitHub. Использование Cygwin в Windows 7 x64.
C:cygwinhomeXPheriorCodelunch_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:cygwinhomeXPheriorCodelunch_call>set GIT_CURL_VERBOSE=1
C:cygwinhomeXPheriorCodelunch_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:UsersXPherior>git --version
git version 1.7.4.msysgit.0
C:UsersXPherior>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
30 ответов
Я просто получил ту же проблему и просто понял, в чем причина.
Github, похоже, поддерживает только ssh-способ чтения и записи РЕПО, хотя https-способ также отображается "чтение и запись".
поэтому вам нужно изменить конфигурацию РЕПО на вашем ПК на ssh:
- редактировать
.git/config
файл в каталоге РЕПО - найти
url=
запись в разделе[remote "origin"]
- изменить
url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git
tourl=ssh://git@github.com/derekerdmann/lunch_call.git
. то есть, изменить все тексты перед@
символssh://git
- сохранить
config
файл и выход. теперь вы можете использоватьgit push origin master
синхронизировать РЕПО на GitHub
чтобы наверняка сможете войти, используя https
протокол, вы должны сначала установить учетные данные для проверки подлинности в ГИТ удаленный URI:
git remote set-url origin https://yourusername@github.com/user/repo.git
тогда вам будет предложено ввести пароль при попытке git push
.
фактически, это в формате аутентификации http. Вы также можете установить пароль:
https://youruser:password@github.com/user/repo.git
вы должны знать ,что если вы это сделаете, ваш пароль github будет храниться в открытом тексте в вашем.мерзавец каталог, что явно нежелательно.
одно небольшое дополнение к Шона!--5-->.
вместо редактирования .git/config
файл вручную, вы можете использовать .
в вашем случае это должно быть:
git remote set-url origin ssh://git@github.com/derekerdmann/lunch_call.git
Я нахожу это проще и чище, чем возиться с точечными файлами.
редактировать .git/config
файл в каталоге РЕПО
найти url=
запись в разделе [remote "origin"]
изменить url=https://github.com/rootux/ms-Dropdown.git
в
https://USERNAME@github.com/rootux/ms-Dropdown.git
здесь USERNAME
- это имя пользователя на GitHub
другие ответы, которые предлагают переключиться на SSH, пропускают точку. HTTPS поддерживается, но вы должны войти в систему с паролем GITHUB, а не с вашей парольной фразой SSH (которая давала мне ту же самую ошибку).
У меня была та же проблема, но убедившись, что мой фактический пароль GitHub в приглашении пароля терминала исправил решение без изменения конфигурации или обращения к SSH.
причина, по которой важно отметить это, является много государственные учреждения (например, моя школа) будут блокировать SSH, но разрешать HTTPS (что является единственной причиной, по которой я начал клонирование по HTTPS в первую очередь).
надеюсь, что это поможет кому-то еще с той же проблемой...
та же ошибка и разрешение на Mac OS X.
все работало нормально, пока я не создал новая учетная запись на GitHub и попытался оттолкнуть
$ git push -u origin master
и получил ошибку:
remote: разрешение NEWUSER / NEWREPO.git отказал OLDUSER. фатально: невозможно получить доступ'https://github.com/NEWUSER/NEWREPO.git/': запрошенный URL-адрес возвращает ошибку: 403
он должен быть исправлен путем установки пользователь.имя глобального или текущего РЕПО
$ git config –-global user.name NEWUSER
$ git config user.name NEWUSER
но этого не произошло.
я исправил это, удалив OLDUSER, связанный с GitHub из приложения Keychain Access в разделе Пароли. Затем команда push прошла успешно.
$ git push -u origin master
Я думаю, что @deepwaters получил правильный ответ для более старых версий. URL HTTPS должен иметь имя пользователя. У меня был git 1.7.0.4 и git push origin master
даже не просил пароль, пока я не добавил его.
это работает для меня:
git remote set-url origin https://username@github.com/user/repo.git
надеюсь, что это помогает
обновите свой git. GitHub ответил на этот вопрос в https://help.github.com/articles/error-the-requested-url-returned-error-403.
код 403 "запрещено". Сервер увидел ваш запрос и отказался. У вас есть разрешение на доступ к этому хранилищу?
У меня на самом деле было очень простое исправление. Все, что я сделал, это отредактировал файл конфигурации git по-другому после клонирования репозитория. Удаленный исходный url-адрес-это то, что вам нужно изменить по умолчанию config. Это должно выглядеть, как показано ниже
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = https://*username*@github.com/*username*/*repository*.git
[branch "master"]
remote = origin
merge = refs/heads/master
разобрался. Я клонировал HTTPS. Настройка моих открытых ключей SSH, клонирование по SSH и нажатие на SSH исправили его.
просто добавьте имя пользователя в 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/
- нажмите на свой репозиторий
- С правой стороны нажмите "Настройки"
- на левой боковой панели параметров нажмите "сотрудники"
- добавить имя человека, которого вы знаете в GitHub
- Нажмите "Добавить Сотрудников"
после этого наш "толчок к Git" работал нормально.
Если вы используете windows, иногда это может произойти, потому что Windows хранит учетные данные для внешнего репозитория (в нашем случае github) в своем собственном хранилище. И учетные данные, сохраненные там, могут отличаться от тех, которые вам нужны прямо сейчас.
чтобы избежать этой проблемы, просто найдите github в этом хранилище и удалите сохраненные учетные данные. После этого при нажатии git будет запрашивать ваши учетные данные и позволит вам нажать.
для всех любопытных, моя машина mac против lucid vm запускала git 1.7.6 против 1.7.0.4, и точно такое же РЕПО было выталкиваемым с моего mac (более новый git), но не VM
та же версия curl. Возможно, некоторые старые версии git не поддерживают https-толчки?
Я столкнулся с той же ошибкой, и причина была глупой - у меня не было привилегий для фиксации в выбранном репозитории. Я не знал, что должен ... --1-->
- вилка выбранный проект первый
- клонировать репозиторий локально
- зафиксировать мои изменения локально
- нажмите изменения в моем клоне github
- запрос-запрос к вышестоящему
как описано в https://help.github.com/categories/63/articles
добавьте имя пользователя как часть URL-адреса, и эта ошибка происходит, потому что команда git нажимает http вместо https. Поэтому установите url
git remote set-url origin https://<username>@github.com/Path_to_repo.git
после чего вам будет предложено ввести пароль:
что сработало для меня:
мое РЕПО было вилки и все еще связан с РЕПО родителей.
git remote -v
скажет вам, является ли это вашим РЕПО или нет.
git remote set-url origin https://github.com/USERNAME/OTHERREPOSITORY.git
позволяет перенастроить его на ваше РЕПО, а затем позволить вам нажать.
для тех, кто имеет доступ запрещен 403 ошибка при использовании ssh(по Сяо) или http URL-адреса попробуйте эти команды
>git config --global --unset-all credential.helper
>git config --unset-all credential.helper
С правами администратора
>git config --system --unset-all credential.helper
изменить
url=https://MichaelDrogalis@github.com/derekerdmann/lunch_call.git
to
url=ssh://git@github.com/derekerdmann/lunch_call.git
это работает!
Не забудьте "git " перед"@".
я выяснил свой собственный вариант этой проблемы.
проблема заключалась не в изменении протокола с https на ssl, а вместо этого, настройка глобального имени пользователя и электронной почты Github! (Я пытался подтолкнуть к частное хранилище.
git config --global user.email "your_github_email_@email.com"
git config --global user.name "Your full name"
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 rm origin
git remote add origin git@github.com:username/repoName.git
затем проверьте его с git remote -v
У меня была та же проблема. Мой случай был: я инициализировал git repo локально, прежде чем создать его на github, а затем попытался добавить удаленную ветку. Я решил свою проблему, изменив порядок действий: создал РЕПО на сайте github, а затем ввел его локально. Но это не тот случай, когда им нравится делать все из командной строки, как мне.
иногда нет ничего плохого в настройках, и есть некоторые проблемы на серверах github.
https://status.github.com - текущее состояние github:)