Gitプッシュを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
更新:SSH urlを使用[email protected]:gitusername/gitrepo.git
もハングする
git remote set-url Origin https://github.com/gitusername/appname.git
正しい
更新:Windowsタスクマネージャがハングしている間、実行中のgitプロセスを確認できます。
私はもう試した:
別のインターネット接続場所を使用する
httpsとsshを切り替えるとハングする
Gitをアンインストールしました。再インストール: https://code.google.com/p/msysgit/downloads/list
Gitをアンインストールしました。 Cygwinのgitをインストールしました
Gitをアンインストールしました。 Github for Windows GUIアプリをインストールし、プッシュすることができました。しかし、このアプリの機能は限られているため、Cygwinウィンドウから別のアプリに移動し、Cygwinを使用して脱出したと思われる完全な機能のWindowsコマンドプロンプトを強制します。
これを解決するために何時間も費やしましたが、以前は問題なく動作していました、ありがとう。
UPDATE 4/2014:私はマシン全体のWin 7、Cygwinなどを再構築しましたが、すべて正常に動作しています
git config --global core.askpass "git-gui--askpass"
これは私のために働いた。ログイン資格情報を入力するだけでプロンプトが表示されるまで3〜5秒かかる場合があります。
Sshの現在の状態を示す~/sshv.sh
などのスクリプトを作成してみてください。
#!/bin/bash
ssh -vvv "$@"
ファイルの所有者の~/sshv.sh
ファイルの実行を許可します。
chmod u+x ~/sshv.sh
次に、次を使用してgit Push
を呼び出します。
GIT_SSH=~/sshv.sh git Push ...
私の場合、これは、閉じる必要があるssh共有接続を使用していることを理解するのに役立ちました。そのため、これらのsshプロセスを強制終了し、動作を開始しました。
GIT_CURL_VERBOSE = 1 git Pushを試してください...プロキシ設定により、gitがプロキシサーバー経由でgithub.comにアクセスしようとして、プロキシが応答しないために発生する可能性があります。 GIT_CURL_VERBOSE = 1の場合、IPアドレスといくつかの情報が表示されます。 IPアドレスをコマンド出力「Host www.github.com」のIPアドレスと比較できます。異なる場合は、https_proxy = ""を作成して再試行できます。
私はまったく同じ症状で同じ問題を抱えていました…絶望の中でシステム全体を再構築しようとしていました))。
私はgit config --global core.askpass "git-gui--askpass"
一部の人がここで提案しているように、それはうまくいきませんでした…git Push
はまだフリーズしていました…
しかし、その後、SSHエージェントにエラーがあることがわかりました。だから私はssh-agentを再起動して…PROFIT
結論:ssh接続に問題がある場合は、SSHエージェントとSSHDサーバーを常に確認してください...それはあなたの問題であると確信しています(そして、それがシステムの再インストール後に機能した理由です)
Cygwin gitまたは外部git(つまりgithub)を使用しているかどうかを確認する価値があります。
_whereis git
_が/cygdrive/c/Program Files (x86)/Git/cmd/git.exe
などを返すだけで、cygwin gitパッケージをインストールするのに最適な場合は、これで問題が解決しました。
以下を試してください。
git config --global core.askpass "git-gui--askpass"
これにより、資格情報の入力が求められ、資格情報が正しい場合は「プッシュ」が成功します。
私のGitウィンドウ画面が打たれたと思っていましたが、実際にはプロンプトのサインが背後に表示されます。それを確認し、資格情報を入力してください。
これは、コンピューターのディスク領域がいっぱいになったときに発生しました。いくつかのファイルを削除し、ゴミ箱を空にして修正します。
同じ問題がありました。心配と無限の複雑なソリューションの検索をやめて、gitを削除して再インストールしてください。
Sudo apt-get purge git
Sudo apt-get autoremove
Sudo apt-get install git
それでおしまい。今すぐ動作するはずです
私の場合、問題はキーチェーンへのアクセスをロックしていたプロセスがあったことです...
Macでキーチェーンアクセスがロックされていないことを確認するために、他のすべてのアプリを強制終了します
それは私が持っていたものと同じかどうか疑問に思っています...
これは(ほぼ逐語的に)から来ています:
AWS EC2インスタンスでこの問題が発生していると言いたいだけです。ロードバランサーからのトラフィックのみを許可するように構成しているときに、EC2インスタンス自体からプッシュしようとしました。どこからでもHTTPを許可するようにルールを変更しましたが、それでも問題は解決しませんでした。その後、セキュリティグループがHTTPS経由でEC2インスタンスからのアウトバウンドトラフィックを許可しないように構成されているためだと気付きました。 HTTPS受信トラフィックを許可することはできませんでしたが、HTTPSを受信可能にすることはおそらく良いポリシーですが、.
完全を期すために(このような問題は、見かけほど複雑ではない場合があります):
存在しないリモートリポジトリを設定すると、この動作が発生する可能性があります-最近、OriginのURLを誤ってgithu.com
。
また、Windows 7の「オブジェクトの書き込み」部分でgitがハングする(gitのデフォルトのWindowsクライアントであるmsysgitを使用する)問題がありました。これがGoogleで最初にヒットしたので、ここに回答を投稿します。
git config --global core.askpass "git-gui--askpass"
はうまく機能しませんでしたが、いくつかの調査の後、 Git Pushは「Writing Objects:100%」で停止します を使用してgit config –global sendpack.sideband false
を使用しました。
ようやくコマンドラインからプッシュできるようになりました!
同じ問題があった。少し混乱していましたが、問題はルートでgit init --bareを作成していたことです。つまり、権限がないためにプッシュを実行できません。代わりに新しいユーザーを作成するか、私の場合はPi Userを使用してgit init --bareを作成し、後でそれが機能するようにしました。
git config --global http.postBuffer 524288000
リモートシステムにデータをPOSTするときにスマートHTTPトランスポートが使用するバッファーの最大サイズ(バイト単位)。このバッファサイズよりも大きいリクエストの場合、HTTP/1.1およびTransfer-Encoding:chunkedを使用して、大量のパックファイルがローカルに作成されるのを防ぎます。デフォルトは1 MiBで、ほとんどのリクエストで十分です。
2つのリポジトリがあり、そのうち1つを正常に機能させました。そこで、私は彼らの.git/config
を比較しました。最後に働いていなかったもの:
[http]
sslVerify = false
代わりに動作していました:
[credential]
helper = store
.git/config
を変更すると、問題が解決しました。
通常、大量のファイルをプッシュするときにこの問題に遭遇します。
我慢してファイルのアップロードを完了することができる場合は、何もする必要がないかもしれません。幸運を -