fatal: NullReferenceException encountered when interacting with remote

北城以北 提交于 2019-12-03 04:12:57

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.

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

One of the reasons for this could be password changes for git(and other similar version control systems).

I can recommend a couple of solutions

  1. As mentioned by @mpro, you will be asking to use the credentials stored on the windows credential manager. You would like to update your password accordingly there.

    The way you can reach that point is(in WIN 10): Start -> Control Panel -> Control Panel -> Credential Manager

  2. On the contrary you can ask git to use credentials from its cache by using the following command

    git config --global credential.helper cache

    By doing this, git will prompt for the username and password at each interaction with the remote origin.

Hope this helps!

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!