前言

当出现Visual Studio推送变更失败时,卸载系统中所有Git以及Visual Studio 的Git工具再重装即可

前情概要

今天由于要尝试使用RabbitMQ,所以打算先在本地做些小Demo进行测试,并用Github进行代码管理,在测试可用之后再重新在SVN上面建立项目。在Visual Studio中更换源代码管理引擎为Git,克隆已有代码库,添加项目和代码, 提交,这些步骤都没问题,直到要推送时团队资源管理器提示失败。输出里报的错为

failed with a fatal error.fatal: revert failed

解决过程

以错误搜索园子内之后得知,有可能是SSH Key丢失,然而根据说法复制SSH Key到git-core文件夹后依然无法利用VS进行推送。

而根据上面帖子内的StackOverflow链接,发现还有第二个解决方法,依照Vote排名第二的步骤执行一遍之后,在Visual Studio里重新进行推送,成功同步到了Github上。

下面贴出解决方法,有兴趣的可以去最下方的链接,先使用链接中更换SSH Key的方法,无法解决再使用下面我列出的解决方法

解决方法

  1. 到VS的安装目录,如\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\中把 Git文件夹删除
  2. 到控制面板的程序中把所有版本的Git卸载(TortoiseGit不用删除,只要删除Git)
  3. 在开始菜单打开 VS 2017 installer,进行修改,把"Git For Windows"与"Github Extension"的复选框去掉
  4. git website重新安装Git For Windows
  5. 打开VS 2017 installer,重新安装"Git For Windows"
  6. 现在可以打开VS用团队资源管理器进行推送了,enjoy

相关链接:

http://www.cnblogs.com/yunfeifei/p/6686065.html
https://stackoverflow.com/questions/42667928/vs-2017-git-failed-with-a-fatal-error/42917487

Visual Studio无法推送提交到Github的解决方法的更多相关文章

  1. Windows7:Visual Studio 2008试用版的评估期已经结束解决方法

    Windows7:Visual Studio 2008试用版的评估期已经结束解决方法       以前在Windows2003碰到这个问题时,都是到"控制面板→添加或删除程序"选择 ...

  2. Visual Studio 2015中 没有“安装和部署”的解决方法

    使用Visual Studio 2015 Community新建项目,在已安装模板中的“其它项目类型”下未找到“安装和部署”选项.在微软官网下载 Microsoft Visual Studio 201 ...

  3. [转]Windows7:Visual Studio 2008试用版的评估期已经结束解决方法

    原文来自:http://blog.sina.com.cn/s/blog_6b1815080100y5z3.html     以前在Windows2003碰到这个问题时,都是到"控制面板→添加 ...

  4. Visual Studio 2013安装Update 3启动crash的解决方法

    Visual Studio 2013安装完Update 3后启动立刻crash,异常信息为: System.InvalidOperationException was unhandled Messag ...

  5. asp.net 1.1网站开发配置出现”Visual Studio .NET 无法创建或打开应用程序”解决方法

    可能的解决方案: 1.注册.net framework 1.1 C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis /i 2,如果配置 ...

  6. 键盘侠Linux干货| 使用SSH方式推送文件至github仓库

    前言 作为一名优秀的计算机从业人员,相信大家github应该都知道吧.(优秀的代码托管工具) 但是由于平常使用的https方式克隆的本地仓库,每次git push时都需要输入帐号密码才能将我们修改的文 ...

  7. Visual Studio 不生成.vshost.exe和.pdb文件的方法【转】

    Visual Studio 不生成.vshost.exe和.pdb文件的方法[转] 使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost ...

  8. Windows 10推送的锁屏壁纸保存方法

    Windows 10推送的锁屏壁纸保存方法 工作中使用的系统为Windows 10,锁屏时显示的壁纸很漂亮,并且每天都会更新,有几张特别喜欢,于是就想这些壁纸到底保存在哪里呢?经过一番摸索,终于搞明白 ...

  9. 转:C#微信公众号开发之接收事件推送与消息排重的方法

    本文实例讲述了C#微信公众号开发之接收事件推送与消息排重的方法.分享给大家供大家参考.具体分析如下: 微信服务器在5秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次.这样的话,问题就来了.有这 ...

随机推荐

  1. OkHttp 3.x 源码解析之Interceptor 拦截器

    拦截器 Java里的拦截器是动态拦截Action调用的对象.它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行,同时也提供了一种可以提 ...

  2. 5分钟构建无服务器敏感词过滤后端系统(基于FunctionGraph)

    摘要:开发者通过函数工作流,无需配置和管理服务器,以无服务器的方式构建应用,便能开发出一个弹性高可用的后端系统.托管函数具备以毫秒级弹性伸缩.免运维.高可靠的方式运行,极大地提高了开发和运维效率,减小 ...

  3. README.md使用

    1.标题: # 一级标题 ## 二级标题 ### 三级标题 2.换行: <br> 3.代码: ``` 代码在中间 ``` 4.表格: 表头 | 表头 | 表头 ---- | ----- | ...

  4. IDEA 中 使用 git(Git)

    GitLab GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务.安装方法是参考GitLab在GitHub上的Wiki页面. Git Git( ...

  5. Newtonsoft.Json 自定义序列化格式转化器

    public static class JsonHelper { static JsonHelper() { Newtonsoft.Json.JsonSerializerSettings settin ...

  6. 06-图2 Saving James Bond - Easy Version (25 分)

    This time let us consider the situation in the movie "Live and Let Die" in which James Bon ...

  7. 转 Python 操作 MySQL 数据库

    #########http://www.runoob.com/python/python-mysql.html Python 标准数据库接口为 Python DB-API,Python DB-API为 ...

  8. Deep Learning 和 Knowledge Graph howto

    领军大家: Geoffrey E. Hinton http://www.cs.toronto.edu/~hinton/ 阅读列表: reading lists and survey papers fo ...

  9. HDU - 6208 The Dominator of Strings HDU - 6208 AC自动机 || 后缀自动机

    https://vjudge.net/problem/HDU-6208 首先可以知道最长那个串肯定是答案 然后,相当于用n - 1个模式串去匹配这个主串,看看有多少个能匹配. 普通kmp的话,每次都要 ...

  10. Barty's Computer 字典树

    https://nanti.jisuanke.com/t/17122 Barty have a computer, it can do these two things. Add a new stri ...