Ошибка Push to GitHub: Не удалось найти хост github.com в файле .netrc; используя значения по умолчанию - PullRequest
17 голосов
/ 01 июня 2010

Не знаю, что происходит, от github нет ответа на этот вопрос, поэтому я спрашиваю здесь. Попробовал толчок мерзавца впервые за месяц или около того и получил это. Включил экспорт GIT_CURL_VERBOSE = 1 и сделал push и получил это:

localhost:send2mobile_rails phil$ 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... * Connected to github.com (207.97.227.239) port 443 (#0)
* SSL connection using DHE-RSA-AES256-SHA
* Server certificate:
*    subject: O=*.github.com; OU=Domain Control Validated; CN=*.github.com
*    start date: 2009-12-11 05:02:36 GMT
*    expire date: 2014-12-11 05:02:36 GMT
*    subjectAltName: github.com matched
*    issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certificates.godaddy.com/repository; CN=Go Daddy Secure Certification Authority; serialNumber=07969287
*    SSL certificate verify ok.
> GET /303devworks/send2mobile_rails.git/info/refs?service=git-receive-pack HTTP/1.1
User-Agent: git/1.7.1
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 401 Authorization Required
< Server: nginx/0.7.61
< Date: Tue, 01 Jun 2010 10:53:13 GMT
< Content-Type: text/html; charset=iso-8859-1
< Connection: keep-alive
< Content-Length: 0
< WWW-Authenticate: Basic realm="Repository"
< 
* Connection #0 to host github.com left intact
* Issue another request to this URL: 'https://303devworks@github.com/MYUSERHERE/send2mobile_rails.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)
* Server auth using Basic with user '303devworks'
> GET /303devworks/send2mobile_rails.git/info/refs?service=git-receive-pack HTTP/1.1
Authorization: Basic MzAzZGVfd29sa3M6Y29nbmwzNzIw
User-Agent: git/1.7.1
Host: github.com
Accept: */*
Pragma: no-cache

< HTTP/1.1 200 OK
< Server: nginx/0.7.61
< Date: Tue, 01 Jun 2010 10:53:13 GMT
< Content-Type: application/x-git-receive-pack-advertisement
< Connection: keep-alive
< Status: 200 OK
< Pragma: no-cache
< Content-Length: 153
< Expires: Fri, 01 Jan 1980 00:00:00 GMT
< Cache-Control: no-cache, max-age=0, must-revalidate
< 
* Expire cleared
* Connection #0 to host github.com left intact
Counting objects: 166, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (133/133), done.
* 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... * connected
* Connected to github.com (207.97.227.239) port 443 (#0)
* SSL re-using session ID
* SSL connection using DHE-RSA-AES256-SHA
* old SSL session ID is stale, removing
* Server certificate:
*    subject: O=*.github.com; OU=Domain Control Validated; CN=*.github.com
*    start date: 2009-12-11 05:02:36 GMT
*    expire date: 2014-12-11 05:02:36 GMT
*    subjectAltName: github.com matched
*    issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certificates.godaddy.com/repository; CN=Go Daddy Secure Certification Authority; serialNumber=07969287
*    SSL certificate verify ok.
* Server auth using Basic with user 'MYUSERHERE'
> POST /303devworks/send2mobile_rails.git/git-receive-pack HTTP/1.1
Authorization: Basic JzAzZGV1d29ya3M6Y25nb29zNzIq
User-Agent: git/1.7.1
Host: github.com
Accept-Encoding: deflate, gzip
Content-Type: application/x-git-receive-pack-request
Accept: application/x-git-receive-pack-result
Expect: 100-continue
Transfer-Encoding: chunked

* The requested URL returned error: 411
* Closing connection #0
error: RPC failed; result=22, HTTP code = 411
Writing objects: 100% (140/140), 2.28 MiB | 1.93 MiB/s, done.
Total 140 (delta 24), reused 0 (delta 0)
^C
localhost:send2mobile_rails phil$ 

Ответы [ 4 ]

17 голосов
/ 31 августа 2010

У меня была та же проблема, и я считаю, что это связано с размером репозитория (отредактированным или размером определенного файла), который вы пытаетесь отправить.

По сути, я смог создать новые репозитории и перенести их на github. Но существующий не будет работать.

Код ошибки HTTP, кажется, подтверждает меня, это ошибка «Требуется длина». Так что, может быть, он слишком большой, чтобы его накипеть или смазать, что макс. Кто знает.

EDIT

Я обнаружил, что проблема может быть файлы, которые большие. У меня было одно обновление это не будет толкать, хотя у меня было успешный подталкивает до этого момента. В коммите был только один файл но это оказалось 1.6M

Итак, я добавил следующее изменение конфигурации

git config http.postBuffer 524288000

Разрешить до размера файла 500M и тогда мой толчок сработал. Возможно, это было что это была проблема изначально с толкая большой репо по http протокол.

КОНЕЦ РЕДАКТИРОВАНИЯ

способ, которым я мог заставить его работать (РЕДАКТИРОВАТЬ до того, как я изменил postBuffer), состоял в том, чтобы записать в архив мое репо, скопировать его на компьютер, который может делать git поверх ssh, и отправить его в github. Затем, когда вы пытаетесь сделать push / pull с исходного сервера, он должен работать через https. (поскольку объем данных намного меньше, чем при первоначальном нажатии).

Надеюсь, это поможет.

7 голосов
/ 09 июля 2012

У меня такая же проблема. Вот как я решил свою проблему.

  1. Я увеличил размер буфера

    git config http.postBuffer 524288000

  2. Затем я проверил пользователей на сервере, и мое имя пользователя было удалено. Поэтому я воссоздал файл, используя следующую команду sudo htpasswd -c /etc/users dilip_rajkumar

Надеюсь, это кому-нибудь поможет ..

4 голосов
/ 01 июня 2010

Похоже, что вы пытаетесь использовать " smart http (s) protocol ", который GitHub теперь поддерживает .
Предположим, у вас нет проблем с прокси или брандмауэром.

Какой у вас удаленный репозиторий в обратном направлении?
(какие git remote -v show списки?)

Я бы порекомендовал:

    machine github.com
    login your_github_login
    password your_github_password

Примечание: в качестве комментария Noufal Ibrahim вы можете использовать ssh (если порт ssh не заблокирован, а у вас есть только соединения http / https)

git clone ssh://user@server:project.git
1 голос
/ 26 июля 2011

Если у вас возникли проблемы с созданием нового файла .netrc, убедитесь, что он находится в вашем каталоге HOME (cd ~ /), убедитесь, что он доступен для чтения вами (chmod 600 ~ / .netrc), и убедитесь, что он выглядит следующим образом. это:

автомат github.com
войдите в свой аккаунт
пароль yourgithubpassword

...