fatal: NullReferenceException encountered when interacting with remote

This is new machine with fresh install of Git.

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

I cloned repo using https. Every time when I try to talk to remote I get this.

> 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.

I tried uninstalling and installing git again. I also cloned same repo to different directory on disk but none of this helped.

When I go to web UI of my BitBucket, there is 2FA enabled. I don't know if this has anything to do with my problem.


Solution 1:

The reason for this is that the Git Credential Manager (GCM) that is distributed with Git 2.19.1 needs to be updated.

The release of Git 2.19.1 says:

Comes with Git Credential Manager v1.18.0.

And when we look at GCM 1.18.1 (the next version) release notes:

Fixes Null Reference exceptions when parameters or contentType are not populated

(Edit 23. Nov 2018): As @pgsandstrom says in the comment, Git has released a new version that also contains a newer GCM. You can download it here: Git Releases.


(Rest is old version before 23. Nov 2018))

The interim fix, until Git releases a new version with the updated GCM is to simply install the new version of Git Credential Manager yourself.

So go download the latest version from here and install it and it should fix your issues.


Note that it is not clear to me whether this is a fault introduced by Git (ie. it fails to populate the parameter or contentType), or that it is a fault introduced by GCM. All I know is that Git has not released a new version that fixes the issue but GCM has.

Solution 2:

I'm running the newest git version 2.19.1.windows.1 installed via Scoop.

We have migrated repository from GitLab to BitBucket, then I've got the same message:

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

What solved the problem was this command:

git config --global credential.helper wincred