Git push не запрашивает пароль и выдает 401. Хорошо, когда пароль вводится в консоли - PullRequest
2 голосов
/ 20 февраля 2012

Для этого я пробовал поиск в Google и поиск в стеке, но пока не нашел решения. Я работаю с Git под Windows.

Когда я пытаюсь выполнить одну из этих команд:

$ git push origin master
$ git push https://name@server/git/repoName.git

т.е. без ввода пароля каждый раз, когда я получаю ошибку аутентификации (она даже не запрашивает пароль):

error: RPC failed; result=22, HTTP code = 401
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly

Когда я предоставляю свой пароль напрямую (inline), push работает нормально:

$ git push https://name:myPasswordHere@server/git/repoName.git

Некоторая дополнительная информация, если требуется, которую я считаю полезной:

$ git remote -v
origin  https://name@server/git/repoName.git (fetch)
origin  https://name@server/git/repoName.git (push)

Содержимое .gitconfig: (git config --list фактически отображает его, поэтому файл читается).

[http]
    sslVerify = false
[user]
    name = foo
    email = foo@foo.com

Полный список параметров конфигурации:

$ git config --list // outside the repo
core.symlinks=false
core.autocrlf=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
pack.packsizelimit=2g
help.format=html
http.sslcainfo=/bin/curl-ca-bundle.crt
sendemail.smtpserver=/bin/msmtp.exe
diff.astextplain.textconv=astextplain
rebase.autosquash=true
http.sslverify=false
user.name=foo
user.email=foo@foo.com

Любые намеки, что может быть не так?

Ответы [ 2 ]

2 голосов
/ 24 февраля 2012

у нас тоже есть та же проблема, решение было снизить до 1.7.6 или аналогичного, все, что мы пробовали с 1.7.8 / 9, провалилось таким же образом

http://code.google.com/p/git-core/issues/detail?id=2

0 голосов
/ 29 февраля 2012

По моему опыту, поддержка http в Git была очень ошибочной (иногда из-за ошибок в cURL, библиотеке http, используемой Git).Если возможно, используйте вместо этого ssh.

Несколько предположений:

  1. Задана переменная окружения GIT_ASKPASS.
  2. .netrc (возможно _netrc)в Windows?) файл, используемый cURL, содержит неверный пароль для вашего сайта.
  3. В Git или библиотеке cURL есть ошибка.Попробуйте обновить до последней версии Git для Windows или перейти на ту же версию, что и ваши коллеги.
...