macOS Sierra Git Gui Crash 解决方法

本篇文章由:http://xinpure.com/macos-sierra-git-gui-crash-solution/

问题描述

自从升级到 macOS Sierra 10.12 之后,git gui 就间歇性的出现闪退问题

一开始还好,只是偶尔闪退,最近真是越来越频繁了。。。

实在是受不了,今天就抽空找了一下解决方法

闪退报错如下:

2016-11-28 10:30:36.463 Wish[23615:1501726] *** Terminating app due to uncaught exception ‘CALayerInvalidGeometry‘, reason: ‘CALayer position contains NaN: [0 nan]‘
*** First throw call stack:
(
        0   CoreFoundation                      0x00007fff7f0407bb __exceptionPreprocess + 171
        1   libobjc.A.dylib                     0x00007fff937ada2a objc_exception_throw + 48
        2   CoreFoundation                      0x00007fff7f0bda65 +[NSException raise:format:] + 197
        3   QuartzCore                          0x00007fff84c09980 _ZN2CA5Layer12set_positionERKNS_4Vec2IdEEb + 152
        4   QuartzCore                          0x00007fff84c09af5 -[CALayer setPosition:] + 44
        5   QuartzCore                          0x00007fff84c0a14b -[CALayer setFrame:] + 644
        6   CoreUI                              0x00007fff8a9b0112 _ZN20CUICoreThemeRenderer26MakeOrUpdateScrollBarLayerEPK13CUIDescriptoraPP7CALayer + 1284
        7   CoreUI                              0x00007fff8a9ac317 _ZN20CUICoreThemeRenderer19CreateOrUpdateLayerEPK13CUIDescriptorPP7CALayer + 1755
        8   CoreUI                              0x00007fff8a92e4d1 _ZN11CUIRenderer19CreateOrUpdateLayerEPK14__CFDictionaryPP7CALayer + 175
        9   CoreUI                              0x00007fff8a931185 CUICreateOrUpdateLayer + 221
        10  AppKit                              0x00007fff7d675623 -[NSCompositeAppearance _callCoreUIWithBlock:options:] + 226
        11  AppKit                              0x00007fff7cd22a9d -[NSAppearance _createOrUpdateLayer:options:] + 76
        12  AppKit                              0x00007fff7cf9b143 -[NSScrollerImp _animateToRolloverState] + 274
        13  AppKit                              0x00007fff7cf5ab79 __49-[NSScrollerImp _installDelayedRolloverAnimation]_block_invoke + 673
        14  AppKit                              0x00007fff7ce21331 -[NSScrollerImp _doWork:] + 15
        15  Foundation                          0x00007fff80a3ec88 __NSFireDelayedPerform + 417
        16  CoreFoundation                      0x00007fff7efc0f44 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 20
        17  CoreFoundation                      0x00007fff7efc0bd3 __CFRunLoopDoTimer + 1075
        18  CoreFoundation                      0x00007fff7efc072a __CFRunLoopDoTimers + 298
        19  CoreFoundation                      0x00007fff7efb82f1 __CFRunLoopRun + 2081
        20  CoreFoundation                      0x00007fff7efb7874 CFRunLoopRunSpecific + 420
        21  HIToolbox                           0x00007fff7e557f6c RunCurrentEventLoopInMode + 240
        22  HIToolbox                           0x00007fff7e557ca9 ReceiveNextEventCommon + 184
        23  HIToolbox                           0x00007fff7e557bd6 _BlockUntilNextEventMatchingListInModeWithFilter + 71
        24  AppKit                              0x00007fff7cc4e5f5 _DPSNextEvent + 1093
        25  AppKit                              0x00007fff7d35e8eb -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1637
        26  Tk                                  0x00000001047cc285 TkGenerateButtonEvent + 494
        27  Tk                                  0x00000001047cc54d Tk_MacOSXSetupTkNotifier + 395
        28  Tcl                                 0x00000001048be5a8 Tcl_DoOneEvent + 237
        29  Tk                                  0x0000000104726f4f Tk_MainLoop + 33
        30  Tk                                  0x0000000104732a5b Tk_MainEx + 1566
        31  Wish                                0x000000010470d55a Wish + 9562
        32  libdyld.dylib                       0x00007fff94089255 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
error: git-gui died of signal 6

解决方法

Google 到一个有效方法

brew install tcl-tk

brew link tcl-tk --force

ln -s $(which wish) "/usr/local/Cellar/git/$git_version/share/git-gui/lib/Git Gui.app/Contents/MacOS/Wish"

操作也不复杂,主要就是先安装一个新版本 Tcl/Tk

然后使用软链接,将新版本的 Tcl/TK 替换掉 git gui 包里的 旧版本 (最好还是备份一下)

以上就搞定了

参考链接

https://github.com/git/git-scm.com/issues/853#issuecomment-254768237

时间: 2024-08-01 04:57:24

macOS Sierra Git Gui Crash 解决方法的相关文章

[转]git使用问题-解决方法 备忘

1-- clone分支,修改文件本地commit后, push回原分支失败,报错: git push   [email protected]'s password:   Counting objects: 21, done.  Compressing objects: 100% (11/11), done.  Writing objects: 100% (11/11), 1010 bytes, done.  Total 11 (delta 9), reused 0 (delta 0)  erro

ubuntu 下git commit error insufficient permission for adding an object to repository database .git/objects错误 解决方法

根据提示便知是权限问题, 用下面的命令查询objects下有root权限的文件ll .git/objects/ | grep root drwxr-xr-x 2 root   root   4096 3月   1 21:40 3d drwxr-xr-x 2 root   root   4096 3月   1 21:40 5c 有些文件确实存在root权限 切换到root用户,将对应的几个目录改回对应的所有者和用户组即可: 切换到root权限, su 第一次可能会提示验证失败 此时可以添加密码 s

MacOS Sierra很慢?为什么?以及如何解决?

升级到MacOS Sierra后,如果Mac变慢,这是正常的.让我们看看下面的话来看看可能的原因和解决办法. MacOS Sierra Slow您的Mac兼容性运行新的Mac OS X 10.12 如果您的Mac机型不属于以下MacOS Sierra兼容性列表,那么您可以考虑回滚到El Capitan,Yosemite或之前使用过的任何版本的OS X,或者升级硬件. MacBook Pro(2010及更高版本) MacBook Air(2010及更高版本) Mac Mini(2010及更高版本)

git提交过程中遇到的 index.lock 问题导致无法提交的解决方法

在提交代码的过程中,可能会遇到下面的问题: fatal: Unable to create 'C:/programLists/zzw-q1/.git/index.lock': File exists. If no other git process is currently running, this probably means a git process crashed in this repository earlier. Make sure no other git process is

iOS中常见的 Crash 场景以及解决方法

1. 常见的 Crash 场景 访问了僵尸对象 访问了不存在的方法 数组越界 在定时器下一次回调前将定时器释放,会Crash 2.  关于BAD_ACCESS  出现的原因: 访问了野指针, 比如访问已经释放对象的成员变量或者发消息, 死循环等; 解决方法: 1.  重写对象的respondsToSelector 方法, 先找到出现 EXECBADACCESS 前访问的最后一个 object; 2. 设置Enable Zombie Objects; 3. 设置全局断点快速定位问题代码所在行,接收

android studio下gradle与Git错误解决方法

Error: Gradle: Execution failed for task ':mytask' > A problem occurred starting process 'command 'jni/ndk-build.cmd" 这是win7打开android程序出现的问题.解决方法:打开build.gradle,找到"commandLine"这行,把commandLine 'ndk-build', '-C', file('jni').absolutePath改为

[git push] rejecteded 问题的解决方法

错误信息: hint: Updates were rejected because a pushed branch tip is behind its remote hint: counterpart. Check out this branch and integrate the remote changes hint: (e.g. 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in

Git 一些错误的解决方法

Git初学者的个人经验记录,仅供参考 1. Pull is not possible because you have unmerged files. 症状:pull的时候 $ git pull Pull is not possible because you have unmerged files.Please, fix them up in the work tree, and then use 'git add/rm <file>'as appropriate to mark resol

opencv mac macOS Sierra 报错 &#39;QTKit/QTKit.h&#39; file not found 解决记录

在安装opencv时如果升级了macOS Sierra可能会遇到如下错误: XXX/cap_qtkit.mm:46:9: fatal error: 'QTKit/QTKit.h' file not found #import ^ 1 error generated. make[2]: *** [modulesideoio/CMakeFiles/opencv_videoio.dir/src/cap_qtkit.mm.o] Error 1 make[1]: *** [modulesideoio/CM