SourceTree Win10 安装不成功解决过程记录

简介

SourceTree 是一款拥有可视化界面的项目版本控制软件,适用于git项目管理,同时它集成了 git flow 工做流程,对于不熟悉 git 命令的初学者来讲,能够经过 SourceTree 快速学会使用 Git 和 git flow 来参与代码版本管理和团队协做开发。git

问题

今日在全新的一台 win10 电脑上安装 SourceTree (2.3.1.0) 时没有安装成功,也没有任何错误提示,双击安装文件后,出下下图后,并未成功安装。github

图片描述

解决

通过 Google 后在 Stack Overflow 上发现这个问题: Source Tree doesn't launch after installationsegmentfault

Cause

The most likely reason for this error is that the user.config file for SourceTree has been corrupted. You can confirm this by locating the file in this location: C:Users<User>AppDataLocalAtlassianSourceTree.exe_<random_string><version_number>app

If this is the cause, when you open the file, it will be full of <NULL> values.dom

Resolution工具

If the user.config file is indeed corrupted, you may delete it. It will be regenerated the next time you start SourceTree, and the application should start normally.学习

看起来解决办法就是删除 C:\Users\<User>\AppData\Local\Atlassian\SourceTree.exe_<random_string>\<version_number> 下的 user.config 后从新安装ui

按照上述办法尝试后发现仍然无效,因此只有另外想办法。this

本身作过四年的 .NET 开发,跑到了C:\Users\<User>\AppData\Local\Atlassian\SourceTree 目录下看了 sourcetree.log 日志信息:spa

ERROR [2018-03-17 20:27:06,785] [3] [SourceTree.App] [.ctor] - finish EnsureSquirrelExecutionStubIsCopied
ERROR [2018-03-17 20:27:07,491] [4] [SourceTree.App] [OnStartup] - Failed to start
System.NullReferenceException: 未将对象引用设置到对象的实例。
   在 SourceTree.Notifications.NotificationsManager.SetOwner(NotificationDialogWindow notificationWindow)
   在 SourceTree.Notifications.NotificationsManager.ShowNotificationDialog[T](NotificationDialogWindow notificationWindow, Tuple`2 customAction, VistaTaskDialogIcon icon)
   在 SourceTree.Notifications.NotificationsManager.ShowNotificationDialog[T](String title, String message, Tuple`2 customAction, String cancelLabel, String suppressionSetting, Action`1 suppressionChangedAction, Object contentControl, String contentCommandLabel, Action contentAction)
   在 SourceTree.Notifications.NotificationsManager.ShowNotificationDialogWithYesConfirmation(String title, String message, String details)
   在 SourceTree.Configuration.WpfSpellCheckerPreFlightCheck.Run()
   在 SourceTree.AppRoot.RunPreFlightChecks()
   在 SourceTree.AppRoot.OnStartup(StartupEventArgs e)
   在 SourceTree.App.OnStartup(StartupEventArgs e)
哈哈,发现了 Wpf 的身影,本身还在 10 年左右用 WPF 开发过应用,很亲切的感受。

既然是微软系技术作的工具,确定是须要 .NET Framework 支持的,所以跑去微软官网 https://www.microsoft.com/net... 从新安装最新的 .net framework.

而后从新安装 SourceTree 就恢复正常了。

资料

  1. 深刻理解学习Git工做流
  2. SourceTree 安装过程和配置
  3. SourceTree 简易 git flow 流程演示
相关文章
相关标签/搜索