问题缘由

因为实习的时候,公司要求将Git升级到最新版本,然后我就升级了。
这里之前有一段小插曲:

因为最初下载Git的本地目录是中文目录,然后在webstorm里面配置Git的路径时最好是用英文的路径,所以在本地就自己新建了一个英文的目录,然后将中文目录下的Git拷贝到英文目录下。可能之前自己也没太注意,webstorm里面进行提交的时候,一直是用的英文目录下的Git,然后命令行用的是中文目录下的Git(因为环境变量配置是中文目录)。不过这个应该也不冲突,因为我想的话,都是用的一个Git版本。就这样顺利地git用了两个多月也没什么问题(一般做项目都是用webstorm里面的Git工具)。

问题发生了

1.百度解决了一通:
今天升级了一下版本,然后项目做了一部分,想提交(用的是webstorm的git工具),先git commit,然后再git pull origin 远程分支名的时候,一直卡住了,我以为是webstorm的速度慢问题,然后我重启了webstorm,弄了很久还是卡住。我开始尝试命令行,在执行git pull的时候出现了fatal: NullReferenceException encountered问题,然后我百度了一通,无意间执行了git config --global credential.helper manager,其实这个是解决Fatal: TaskCanceledException encountered这个问题。
2.百度解决不了,然后就重新卸载,然后安装git
弄了很久还是不行,找了人来帮忙,重新生成SSH,然后添加到公司的git服务器上。最后还是不行。他把他电脑上的git config和我的比较了一下,发现credential.helper这个不一样,就是因为我之前无意间改了。
3.最后将credential.helper改成store之后,出现了Couldn't find remote ref 远程分支名这个问题
这个问题解释就是找不到远程分支名,才发现分支名打错了。
4.最后修改分支名之后,就正常了,但是用命令行git pull的时候还是会提示fatal: NullReferenceException encountered这个,但是能成功pull。用webstorm的git命令就不会有这个问题提示。

总结来说

在解决问题的时候,要对症下药,不要想当然执行命令,不然可能会出现更多的错误。
关于git config --global credential.helper store这个命令,贴个链接https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E5%87%AD%E8%AF%81%E5%AD%98%E5%82%A8,这个就是讲Git的凭证存储。

“store” 模式会将凭证用明文的形式存放在磁盘中,并且永不过期。 这意味着除非你修改了你在 Git 服务器上的密码,否则你永远不需要再次输入你的凭证信息。 这种方式的缺点是你的密码是用明文的方式存放在你的 home 目录下

转载于:https://www.cnblogs.com/sminocence/p/9768529.html

记git升级版本之后出现fatal: NullReferenceException encountered问题相关推荐

  1. Git 升级版本(windows)

    有两种方式,推荐第二种. 原文链接:https://blog.csdn.net/csdn_yudong/article/details/121684158 一.官网下载最新安装包 在 git 官网下载 ...

  2. Centos(Linux)升级git最新版本

    在Linux/Centos服务器上,如果使用的git版本过低,使用的时候可能会由于低版本不支持遇到各种问题,比如Centos7系统自带的git版本一般是1.8.3.1的,比较旧,通常建议升级git后再 ...

  3. Git分布式版本控制系统(上)

    Git分布式版本控制系统(上) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...

  4. Git分布式版本控制系统

    Git分布式版本控制系统 git remote -v 查看仓库 一 企业高效持续集成平台场景介绍: 二,GIT分布式版本控制系统: 2.1 Git简介: 2.1.1 git是什么? Git在Wikip ...

  5. 关于git远程版本库的一些问题之解决

    Part1:CentOS6.5免密码登录 修改/etc/ssh/sshd_config RSAAuthentication yes PubkeyAuthentication yes Authorize ...

  6. Git分布式版本控制系统简介和使用

    Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.[1] Git的读音为/gɪt/. Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本 ...

  7. Git之版本回退与前进

    我们对已经提交到demo.txt文件再做一次修改,添加上天气情况,则修改好的文件内容为: 之后不要忘了提交到仓库. 那么此时,我们就有了三个不同版本的文件了,分别是: Create a new fil ...

  8. 【Phalcon】升级版本

    今天在我的PHP7环境下安装phalcon-devtools,安装完成后无法使用,提示信息是版本不兼容.查看一下,发现phalcon版本是2.1.0的-当时下载安装没去看,于是乎,只能升级版本了 1. ...

  9. 【22/03】为什么要学git分布式版本控制软件及基本操作

    碎碎念: 虽然说每次创建github仓库再push就几句命令,但是总是忘,于是整理了一下,理解记忆每条命令的含义,和清晰化流程很重要!!!!但最重要的就是我们为什么要学, 为什么要用, 这样在我们自己 ...

最新文章

  1. Android SlidingMenu以及ActionBarSherlock的基础使用教程
  2. 为什么利用多个域名来存储网站资源会更有效?
  3. 使用VS Code开发调试.NET Core 多项目
  4. Web框架——Flask系列之WTF表单验证练习(七)
  5. JQuery 登录,记住密码,密码小眼睛
  6. Web后端学习笔记 Flask(13)memcached
  7. pc和移动端获取滚动条的位置
  8. 面向对象【day07】:新式类和经典类(八)
  9. 【论文写作】精品课程教学网站中用户管理如何写
  10. android nfc MifareUltralight读写
  11. 计算机黑板报主题ps,Photoshop︱用PS创建一个黑板报
  12. BS和CS 架构的介绍以及优缺点
  13. 浅谈python深拷贝和浅拷贝
  14. 嵌入式系统硬件处理器架构的发展趋势及比较分析
  15. Anaconda安装指南
  16. 2019年,做努力奔跑的追梦人
  17. 解决csv文件的换行问题
  18. linux系统测试屏幕,RedHat Linux 9.0 操作系统测试题2
  19. 服务器系列产品名称详解
  20. python小工具小发明_用python写PDF转换器的实现

热门文章

  1. vue(vue-cli+vue-router)+babel+webpack项目搭建入门(四)
  2. 【动态规划】记录每步选择:牛客网:连续子数组的最大和(二)
  3. mysql大表数据抽取_从云数据迁移服务看MySQL大表抽取模式
  4. mysql中log_mysql中log
  5. C++ IO库:cmd读写,字符串读写,文件读写,<<重载,标准输出
  6. java 管道流_Java IO7:管道流、对象流
  7. 服务器上的文件如何查看,如何查看远程服务器上的文件
  8. 一个手机只能连接一个热点吗_两个手机怎么连接热点
  9. 项目结构设计 java_Java项目架构设计
  10. Potentiometers