Visual Studioでの私のエラーです。これを修正する設定があるかどうかわかりません。さらに、gitコマンドラインツールのインストールが制限されています。
Error encountered while pushing to the remote repository: Git failed with a fatal error.
fatal: HttpRequestException encountered.
An error occurred while sending the request.
error: cannot spawn askpass: No such file or directory
fatal: could not read Username for 'https://github.com': terminal prompts disabled
原因:GitHubはサーバー側のセキュリティ要件を更新しました 。 TLS 1.0および1.1はサポートされなくなり、1.2のみがサポートされます。古いバージョンのWindows用Git Credential Managerは1.0を使用していました。
解決策:アップデート Git for Windows 。バージョン2.14.3以降には、Windows用の最新のGit Credential Managerが含まれています。
または、 Git Credential Manager for Windows 自体のみを更新できます。バージョン1.14.0以降のTLS 1.2をサポートします。
Visual Studioを最新バージョンに更新するだけで、修正する必要があります。私のために働いた。
Git Credential Manager for Windowsv1.17.1は、BitBucketの問題を修正します。 1つのコメントに注意してください。
バグの修正:
Fixes a bug related to Bitbucket authentication (thanks to @Foda for contributing the fixes).
https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases
これは、GithubがTLS v1.0およびv1.1を無効にしたためです。GithubEngineeringの通知を読むことができます。リンクはこちらです 弱い暗号化標準の削除通知 。
リンクされたページから:
昨年、私たちはいくつかの弱い暗号化規格の廃止を発表しました。その後、昨年末に向けて、クライアントの移行を容易にするために行ったいくつかの変更の概要を示すステータスアップデートを提供しました。以前の投稿で言及した2018年2月1日の締切日にすぐに近づき、その結果、スケジュールを1週間遅らせました。
...
Visual Studioには、Git for WindowsおよびGit Credential Manager for Windows(GCM)の特定のバージョンが付属しています。 Microsoftは、TLSv1.2 Gitサーバーで動作するようにVisual Studio 2017の最新バージョンを更新しました。 Visual Studioのユーザーは、製品内通知フラグをクリックするか、IDEから直接更新を確認することにより、最新リリースにアップグレードすることをお勧めします。マイクロソフトは Visual Studio開発者コミュニティサポートフォーラム で追加のガイダンスを提供しています。
私の場合、gitを更新してbinディレクトリをコピーしてもエラーを修正できません。私の解決策は、git configをチェックすることです。まず、git bashを開きます。次に、git configを確認します。 git config -l
http.proxyおよびhttps.proxyは、プロジェクトを正常に更新できないようにします。また、vpnを使用して1080ポートを開くと、アップロードがそれほどスムーズになりません(vpnが遅い場合のみ)
私の場合、bitbucketのGoogleメールアドレスには2要素認証が含まれていたため、上記は機能しませんでした。そのため、bitbucketアプリトークンを作成する必要があり、Origin https URLに次のように生成されたトークンを挿入する必要がありました https:// username:[email protected]/repo/test.git
適切な構成があるかどうかを確認します。すべてが正常であれば、間違った電子メールが存在する可能性があります。チームエクスプローラー内で、電子メールのグローバル設定を確認します。
Git bash Windowsでは、ポップアップウィンドウにパスワードを入力しても問題が発生していました。 Git Gui
で試してみましたが、うまくいきます。
上記のコードは正しいですが、プルできてプッシュできないが、VSではなくコンソールだけでプッシュでき、企業プロキシの背後にいる場合は、別のアプローチを試すことができます。それはあなたのために働くかもしれません:
.gitconfig
ファイルに書き込みます:
[credential]
authority = *the-token*"
ファイル.gitconfig
をコマンドで検索:git config --list --show-Origin