web-dev-qa-db-ja.com

致命的:リモートと対話するときにNullReferenceExceptionが発生しました

これは、Gitを新規インストールした新しいマシンです。

> git --version
git version 2.19.1.windows.1

Httpsを使用してレポのクローンを作成しました。私はリモートに話をしようとするたびに、私はこれを取得します。

> git pull
fatal: NullReferenceException encountered.
Object reference not set to an instance of an object.
fatal: NullReferenceException encountered.
Object reference not set to an instance of an object.

もう一度gitをアンインストールしてインストールしてみました。また、同じレポをディスク上の別のディレクトリに複製しましたが、どれも役に立ちませんでした。

BitBucketのWeb UIにアクセスすると、2FAが有効になっています。これが私の問題と関係があるかどうかはわかりません。

37
Piotr Perak

これは、Git 2.19.1で配布されているGit Credential Manager(GCM)を更新する必要があるためです。

Git 2.19.1 のリリースは次のように述べています:

Git Credential Manager v1.18.0が付属しています。

GCM 1.18.1 (次のバージョン)リリースノートを見ると:

パラメーターまたはcontentTypeが入力されない場合のNull Reference例外を修正

(2018年11月23日編集)@ pgsandstrom がコメントで述べているように、Gitは新しいGCM。こちらからダウンロードできます: Git Releases


(残りは2018年11月23日以前の古いバージョンです)

Gitが更新されたGCMを含む新しいバージョンをリリースするまでの暫定修正は、Git Credential Managerの新しいバージョンを自分でインストールすることです。

here から最新バージョンをダウンロードしてインストールすると、問題が修正されます。


これがGitによって導入された障害(つまり、パラメーターまたはcontentTypeの入力に失敗する)なのか、GCMによって導入された障害なのかは明確ではないことに注意してください。私が知っているのは、Gitは問題を修正する新しいバージョンをリリースしていないが、GCMはリリースしているということです。

Scoopを介してインストールされた最新のgit version 2.19.1.windows.1を実行しています。

リポジトリをGitLabからBitBucketに移行した後、同じメッセージが表示されました。

致命的:NullReferenceExceptionが発生しました。オブジェクト参照がオブジェクトインスタンスに設定されていません。

問題を解決したのは次のコマンドでした:

git config --global credential.helper wincred
2
mpro

この理由の1つは、git(および他の同様のバージョン管理システム)のパスワード変更である可能性があります。

いくつかのソリューションをお勧めできます

  1. @mproで述べたように、Windows資格情報マネージャーに保存されている資格情報を使用するように求められます。そこでパスワードを更新します。

    そのポイントに到達する方法は(WIN 10):スタート->コントロールパネル->コントロールパネル->資格情報マネージャー

  2. それどころか、次のコマンドを使用して、キャッシュから資格情報を使用するようにgitに依頼できます

    git config --global credential.helper cache

    これにより、gitはリモートOriginとのやり取りのたびにユーザー名とパスワードの入力を求めます。

お役に立てれば!

0