前言
當出現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的方法,無法解決再使用下面我列出的解決方法
解決方法
- 到VS的安裝目錄,如
\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\
中把Git
文件夾刪除 - 到控制面板的程序中把所有版本的
Git
卸載(TortoiseGit不用刪除,只要刪除Git) - 在開始菜單打開 VS 2017 installer,進行修改,把"Git For Windows"與"Github Extension"的復選框去掉
- 在git website重新安裝Git For Windows
- 打開VS 2017 installer,重新安裝"Git For Windows"
- 現在可以打開VS用團隊資源管理器進行推送了,enjoy
相關鏈接:
http://www.cnblogs.com/yunfeifei/p/6686065.html
https://stackoverflow.com/questions/42667928/vs-2017-git-failed-with-a-fatal-error/42917487