首页 > 教程 > MAC常见问答 > SourceTree Mac 免登陆版(Git客户端)常见问题

SourceTree Mac 免登陆版(Git客户端)常见问题

小编: user33时间: 2018-04-28浏览: 0

相信很多朋友在使用SourceTree Mac这款简单易用的Git客户端的时候,总有很多问题得不到解决,今天小编为您带来SourceTree Mac的一些常见问题和疑难问题的解答哦,希望对您有所帮助,谢谢!

1.解决SourceTree中的性能问题
答:
SourceTree可能表现不佳的原因有很多。在您请求支持或开发人员之前,如果您可以通过以下列表来帮助缩小问题的范围,以及在性能不佳的情况下提供支持的项目列表,那么这很有帮助。

- 你可以做些什么来帮助SourceTree的表现
如果您有很多未跟踪的文件,请确保SourceTree中的筛选器不会显示这些文件,因为Git / Hg需要很长时间才能做出响应。
如果您使用的是Git / Hg的系统版本,请确保它是最新版本。
确保你有足够的系统资源,CPU,RAM,大量的硬盘空间等。
您已获得SourceTree的最新副本(我们不再发布到App Store!)
存储库位置是本地的,即在您的硬盘上,而不是通过网络或已安装的卷。
从终端调用Git / Hg按预期执行,即'git log'
确保没有应用程序不断在存储库位置写入磁盘,这会导致SourceTree不断刷新。
当试图对它们执行Git / Hg操作时,确保存储库中的文件未被锁定(即在编辑器中打开)
- 提供支持的信息
无论是Git / Hg还是哪个版本(嵌入式,系统和系统版本)
系统资源,CPU / RAM / HDD容量(+可用硬盘空间)
您的存储库所在的位置(即本地)位于已安装的卷上或通过网络(SMB共享等)
SourceTree中有多少存储库
一次打开多少个存储库窗口
您正在使用的SourceTree版本
操作系统版本。
该文件过滤您在SourceTree中使用的文件,即'Show Untracked'
如果您有很多未跟踪的文件,请记下这一点
你可以在该版本库上运行'git status'吗?
日志文件位于:
Windows:C:\ Users \ <用户名> \ AppData \ Local \ Atlassian \ SourceTree \ sourcetree.log
Mac:打开“控制台”应用程序并搜索“SourceTree”。复制任何相关的输出。

2.SourceTree在启动时崩溃
尝试启动SourceTree时,会显示以下对话框,并显示消息“SourceTree已停止工作”,并且应用程序无法启动:

答:
- 诊断
诊断步骤
。在崩溃后立即在Windows中打开事件查看器
。转到Windows日志>>应用程序
。应该有两个错误条目。
。其中一个具有  Source:.NET Runtime
Application: SourceTree.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.Configuration.ConfigurationErrorsException
Stack:
at System.Configuration.ConfigurationSchemaErrors.ThrowIfErrors(Boolean)
at System.Configuration.BaseConfigurationRecord.ThrowIfParseErrors(System.Configuration.ConfigurationSchemaErrors)
at System.Configuration.Configuration..ctor(System.String, System.Type, System.Object[])
at System.Configuration.ClientConfigurationHost.OpenExeConfiguration(System.Configuration.ConfigurationFileMap, Boolean, System.Configuration.ConfigurationUserLevel, System.String)
at System.Configuration.ConfigurationManager.OpenExeConfigurationImpl(System.Configuration.ConfigurationFileMap, Boolean, System.Configuration.ConfigurationUserLevel, System.String, Boolean)
at SourceTree.App.SetStartupJIT()
at SourceTree.App..ctor()
at SourceTree.App.Main()
。第二个有作为来源:应用程序错误
Faulting application name: SourceTree.exe, version: 1.8.3.0, time stamp: 0x56f18db8
Faulting module name: KERNELBASE.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdfe0
Exception code: 0xe0434352
Fault offset: 0x000000000000aa7d
Faulting process id: 0xb54
Faulting application start time: 0x01d1d3a51746a7d1
Faulting application path: C:\Program Files (x86)\Atlassian\SourceTree\SourceTree.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll
Report Id: 550f6aff-3f98-11e6-a681-0800279df20e
- 原因
此错误最可能的原因是SourceTree 的user.config文件已损坏。
您可以通过在以下位置找到该文件来确认这一点:
C:\用户\ <用户> \应用程序数据\本地\ Atlassian的\ SourceTree.exe_ <random_string> \ <版本>
如果这是原因,当您打开文件时,它将充满<NULL>值。
- 解析度
如果user.config文件确实损坏,则可以将其删除。
它将在您下次启动SourceTree时重新生成,并且应用程序应该正常启动。
3.执行git生成不能为cygwin的堆保留空间
- 问题
在Git客户端上推送到Stash结果后出现间歇性错误:
0 [main] us 0 init_cheap: VirtualAlloc pointer is null,
Win32 error 487 AllocationBase 0x0, BaseAddress 0x68540000,
RegionSize 0x480000, State 0x10000
c:\msysgit\bin\sh.exe:
*** Couldn't reserve space for cygwin's heap, Win32 error 0
- 原因
这个问题的完整解释可以在这个Stackoverflow的答案中找到。
它的Cygwin代码未能在其固定地址0x68570000处为其堆分配大约5 MB大容量内存,而只有大约2.5 MB大小的空洞显然可用。相关的代码可以在msysgit源文件中看到  。
- 解析度
无论  当前的Cygwin  和  MSYS的新版本  - MSYS2 -已经到位不同的逻辑,这是希望更稳健。这只是旧版Git for Windows,它仍然使用旧的MSYS系统构建而成。
解析度:
安装  适用于Windows 2的Git  - 它使用新的,  适当维护的MSYS2构建,  并且还具有许多新功能,大量的错误修复等等。还有一个64位版本可以降低地址空间冲突的几率,即使这个问题没有解决。
(信息) 如果你正在使用嵌入式的Git,你需要改变SourceTree的Git的设置为使用  系统Git的导航工具>选项>的Git(标签)> Git版本>使用系统的Git
在我们的  支持平台上,  我们概述了适合您的环境的Git版本。

4.在SourceTree for Windows中禁用Git或Mercurial支持
目的
某些客户可能需要在Windows下为SourceTree禁用对Git或Mercurial的支持。
这可以通过修改user.config配置文件来完成。
答:
找到SourceTree的user.config文件。
例如  C:\ Users \ yourUser \ AppData \ Local \ Atlassian \ SourceTree.exe_Url_ {hash} \ {version} \ user.config
找到 user.cofng文件中的相应部分并进行编辑,具体取决于您要禁用的产品:
为GIT:对于MERCURIAL
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<userSettings>
<SourceTree.Properties.Settings>
...
<setting name="EnableGitSupport" serializeAs="String">
<value>False</value>
</setting>
...
</SourceTree.Properties.Settings>
</userSettings>
</configuration>
通过将此属性设置为true  或在
SourceTree UI中通过  工具/选项/ Git /启用Git  选项,可以重新设置Git支持
5.Git无法将远程配置为镜像问题
推送到已配置为镜像的git存储库不起作用,报告如下错误:
error: --mirror and --tags are incompatible

答 :
- 原因
您使用--mirror = push选项创建了SourceTree外部的远程设备。这迫使git将--mirror添加到与一些更具体的选项(如--tags)不兼容的命令行,SourceTree默认使用它来推送标记。
- 解决方法
--mirror = push远程配置对于命令行来说非常方便,因此您不必输入太多; 因为SourceTree更具体的如何推动这将会发生冲突。不幸的是,git没有办法覆盖强制的--mirror选项,因此这个远程控件不适用于SourceTree。请在没有强制的--mirror选项的情况下创建另一个指向同一位置的远程指针(例如,在SourceTree中创建它),或者从.git / config的远程位置删除此选项。
你不应该在SourceTree中使用--mirror选项,因为它默认在推送对话框中选择你的跟踪分支,并且减少键入不是问题。

6.点击Bitbucket / Stash上的“克隆”链接不起作用
- 症状
单击Bitbucket或Stash中的“克隆SourceTree”链接
你会收到一个错误:'sourcetree://没有任何注册的协议处理程序'
启动GitHub'Mac in Clone'链接时,您可能也会遇到类似问题,即使您已在Preferences> Git中启用它,上述错误或SourceTree仍未处理该链接。
- 原因
当安装SourceTree 1.4时,Mac OS X的Launch Services数据库尚未更新。看起来,自动更新系统(Sparkle)不会触发数据库更新,而是将新的.app拖放到Finder中的应用程序中。
-  解析度
要重建您的启动服务数据库,请在终端中运行以下命令:
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user
或者,从网站上重新下载SourceTree并将其从图像拖放到Finder中的/ Applications中,这将导致启动服务刷新
7.SourceTree似乎很慢
问题
SourceTree似乎很慢,特别是当刷新视图如历史视图时。
答:
- 原因
以下项目可能会影响SourceTree的性能
原因1
磁盘空间不足
此问题最常见的原因是您的磁盘空间不足。如果您的硬盘已满90%或更高,则OS X通常会出现一些性能问题,但它尤其会影响启动新进程所需的开销。由于SourceTree依赖定期启动Git / Mercurial(hg)和其他进程,磁盘空间不足会对其造成不利影响。
SSD驱动器似乎受到了特别的影响。
原因2
存储库在远程驱动器上运行
另一个可能的原因是您正在远程驱动器(如NAS)上运行存储库。这不是推荐的配置,它实际上可能会导致其他问题,例如,如果您使用Windows(SMB)共享(请注意,这是与Git相关的问题,而不是SourceTree),Git中存在损坏。
- 解析度
原因1的解决方案
磁盘上有足够的空间
清理硬盘,以便始终以低于90%的利用率运行
原因2的解决方案
存储库在本地驱动器上运行
移动您的存储库,以便它在本地驱动器上运行8.UTF-8字符在SourceTree中显示为转义字符代码- 症状
UTF-8字符在SourceTree中显示为具有不寻常转义字符代码的文件名。
例如,该文件:
$ touch どうもありがとうミスターロボット.txt
它显示为八进制转义的UTF-8格式:
$ git version
git version 1.7.3.1
$ git status
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   "\343\201\250\343\202\231\343\201\206\343\202\202\343\201\202\343\202\212\343\201\213\343\202\231\343\201\250\343\201\206\343\203\237\343\202\271\343\202\277\343\203\274\343\203\255\343\203\233\343\202\231\343\203\203\343\203\210.txt"
nothing added to commit but untracked files present (use "git add" to trac
答:
- 原因
默认情况下,Git无法处理其中包含UTF-8字符的文件名。
- 解析度
解决方法是稍微不同地配置你的Git:
git config --global core.quotepath false
9.如何擦除SourceTree首选项
- 问题
如果由于偏好设置不适合设置SourceTree而导致出现问题,则可能需要完全清除偏好设置。这是一个非常罕见的问题,通常是由于在SourceTree之外设置了配置,或者某些系统环境设置可能导致导致SourceTree崩溃的其他配置问题。
请注意,擦除偏好设置意味着您将失去书签和查看设置。请了回来,这些在事件擦拭你的喜好是没有问题的原因。
如果擦除首选项可以解决问题,则可能需要重新添加书签,并在SourceTree中指定其他常规设置
答:
解析度
- 苹果电脑
以下文件在备份后需要删除。
确保SourceTree已关闭。
在删除文件之前,请确保文件在以下文件夹中备份
删除〜/ Library / Application Support / SourceTree /
如果您在  Mavericks 之前使用OS X版本  :  删除〜/ Library / Preferences / com.torusknot.SourceTreeNotMAS.plist(您应该使用SourceTree的直接版本,因此为“NotMAS”)
如果您使用Mavericks或更高版本,请在终端中运行以下内容 defaults delete com.torusknot.SourceTreeNotMAS
再次打开SourceTree以测试它是否工作。
如果这不能解决您的问题,请关闭SourceTree并恢复文件,然后再次重新打开SourceTree(如果可能的话)。
- 视窗
确保SourceTree已关闭
在删除文件之前,请确保文件在以下文件夹中备份
删除C:\ Users \ <用户名> \ AppData \ Local \ Atlassian \ SourceTree \中的文件“bookmarks.xml”,“opentabs.xml”,“userhosts”
删除C:\ Users \ < 用户名 > \ AppData \ Local \ Atlassian \ SourceTree.exe中的文件< random_string > \ < version_number > \ user.config
再次打开SourceTree以测试它是否工作。
如果这不能解决您的问题,请关闭SourceTree并恢复文件,然后再次重新打开SourceTree(如果可能的话)。
以上为小编今天给您带来的常见疑难问题解答,感谢您的观看?

相关软件

相关文章