Подтвердить что ты не робот

Git push зависает при нажатии на Github?

Git push зависает каждый раз, когда я пытаюсь нажать на github. Я использую Cygwin и Windows 7. Git функции тонкой локализации отслеживания, предоставления статуса, установки глобального user.name и user.email и допускающих коммитов.

Я все еще новичок и учился.

Я ввожу git push, git push origin master или git push -u origin master, и я получаю только пустую строку, требующую от меня ctl-c, чтобы вернуть запрос.

ssh-keygen -t rsa -C "[email protected]" запрашивает имя файла и висит

git push heroku master зависает

$ git status возвращает On branch master nothing to commit, working directory clean

$ git pull возвращает Already up to date

$ git remote -v возвращает:

heroku  [email protected]:myherokusite.git (fetch)

heroku  [email protected]:myherokusite.git (push) origin  

https://github.com/gitusername/appname.git (fetch) origin  

https://github.com/gitusername/appname.git (push)

or the correct ssh remote settings are returned when trying this with ssh

Обновлено: Использование URL-адреса SSH [email protected]:gitusername/gitrepo.git также зависает

git remote set-url origin https://github.com/gitusername/appname.git правильный

Обновлено: Я вижу процессы Git, запущенные в диспетчере задач Windows, когда он зависает.

Я пробовал:

Использование разных мест подключения к Интернету

переключение между https и ssh и зависание

Удалено git. Переустановлено из: https://code.google.com/p/msysgit/downloads/list

Удалено git. Установленный Cygwin git

Удалено git. Установлено приложение Github для Windows GUI, и я смог нажать. Но это приложение имеет ограниченную функциональность, вытесняет меня из моего окна Cygwin в другое приложение, которое затем приводит меня в командную строку Windows для полной функциональности, с которой, как мне казалось, я избежал использования Cygwin.

Прошло много, много часов, пытаясь разрешить это, он работал безупречно, спасибо.

ОБНОВЛЕНИЕ 4/2014: Я перестроил всю машину Win 7, Cygwin и т.д., и теперь все работает нормально

4b9b3361

Ответ 1

git config --global core.askpass "git-gui--askpass"

Это сработало для меня. Для появления приглашения может потребоваться 3-5 секунд, чтобы просто ввести свои учетные данные для входа, и вам хорошо идти.

Ответ 2

Попробуйте GIT_CURL_VERBOSE = 1 git push... Это может произойти из-за установки прокси-сервера git будет пытаться достичь github.com через прокси-сервер, а прокси-сервер не отвечает. С помощью GIT_CURL_VERBOSE = 1 будет отображаться IP-адрес и некоторая информация. вы можете сравнить ip-адрес с IP-адресом "host www.github.com". если они разные, вы можете сделать https_proxy = "" и повторите попытку.

Ответ 3

Попробуйте создать script как ~/sshv.sh, который покажет вам, что ssh:

#!/bin/bash
ssh -vvv "[email protected]"

Разрешить выполнение файла ~/sshv.sh для владельца файла:

chmod u+x ~/sshv.sh

Затем запустите < <24 > с помощью

GIT_SSH=~/sshv.sh git push ...

В моем случае это помогло мне понять, что я использовал общие соединения ssh, которые нужно было закрыть, поэтому я убил эти процессы ssh и начал работать.

Ответ 4

Его стоит проверить, используете ли вы cygwin git или внешний git (т.е. github).

Если whereis git возвращает только /cygdrive/c/Program Files (x86)/Git/cmd/git.exe или подобное, самое лучшее для установки пакета cygwin git, это решило проблему для меня.

Ответ 5

У меня была такая же проблема с абсолютно такими же симптомами... Я собирался перестроить всю свою систему в отчаянии)).

Я даже был настолько наивен, чтобы попробовать git config --global core.askpass "git-gui--askpass", как это предлагают некоторые люди, но это не сработало... git push все еще зависает...

Но потом я понял, что произошла ошибка с моим агентом SSH. Поэтому я перезапустил ssh-agent и... PROFIT

Заключение: всегда проверяйте свой SSH-агент и SSHD-сервер, когда у вас возникли проблемы с подключением ssh... Я уверен, что это была ваша проблема (и именно поэтому она работала после переустановки вашей системы)

Ответ 6

Попробуйте следующее:

git config --global core.askpass "git -gui - askpass"

Это вызовет учетные данные, а затем нажмите "push", если учетные данные верны.

Ответ 7

Я просто хотел сказать, что у меня такая проблема на моих экземплярах AW2 EC2. Я пытался нажать на мой экземпляр EC2, когда у меня он настроен, чтобы разрешить трафик только с балансировщика нагрузки. Я изменил правило, чтобы разрешить HTTP извне, но он все еще не устранил проблему. Тогда я понял это, потому что мои группы безопасности настроены так, чтобы не разрешать исходящий трафик из моих экземпляров EC2 через HTTPS. Я не разрешал входящему трафику HTTPS заставить его работать, хотя это, вероятно, хорошая политика для того, чтобы вы имели доступ к HTTPS.

Ответ 8

Это произошло для меня, когда мое место на диске было заполнено. Удалите некоторые файлы и очистите корзину, чтобы исправить.

Ответ 9

В моем случае проблема была в том, что был какой-то процесс, который заблокировал мой доступ к keychain...

Выключите все другие приложения, чтобы убедиться, что доступ к цепочке ключей не заблокирован на вашем Mac.

Ответ 10

Мне интересно, было ли это то же самое, что у меня было...

  • Перейдите в Putty
  • Нажмите "Настройки по умолчанию" в сохраненных сеансах. Нажмите Загрузить
  • Перейти к соединению → SSH → Ошибки
  • Установите "Chokes on PuTTY SSH-2" winadj "запросы" на "Вкл." (вместо "Авто" )
  • Вернуться к сеансу в древовидной структуре (вверху списка)
  • Нажмите "Настройки по умолчанию" в поле "Сохраненные сеансы". Нажмите "Сохранить".

Это (почти дословно) происходит от https://tortoisegit.org/issue/1880

Ответ 11

Для полноты (иногда такие проблемы не так сложны, как могут показаться):

Наличие не существующего удаленного репозитория также может привести к такому поведению - я недавно узнал, случайно изменив свой исходный URL на githu.com.

Ответ 12

Обычно я вижу, как я сталкиваюсь с этой проблемой при нажатии большого количества файлов.

Если вы можете быть терпеливыми и позволить файлам завершить загрузку, вам может вообще не понадобиться ничего делать. Удачи -

Ответ 13

Это произошло для меня, вот как я исправил. Я использовал Cygwin, и он повесился, поэтому я попробовал запросить имя пользователя/пароль для фиксации:

git config --global core.askpass "git-gui--askpass"

Как только я выполнил git push -u origin master и ввел пароль пользователя, он все же повесился, но появился, чтобы зафиксировать GitHub.

Используется та же команда из приглашения dos: git push -u origin master Git не зависает. Поэтому, возможно, проблема связана с CygWin в моем случае.