This post consists of: http://xinpure.com/macos-sierra-git-gui-crash-solution/
Problem description
The Git GUI has been intermittently flashed since upgrading to MacOS Sierra 10.12.
At first it was good, just occasionally flash back, recently really more and more frequent ...
I can't stand it, I find a way to solve it today.
The error is as follows:
2016-11-28 10:30:36.463 wish[23615:1501726] * * * terminating app due to uncaught exception ' Calayerinvalidgeometry ', Reaso N: ' calayer position contains nan: [0 nan] ' * * * First throw call stack: ( 0 corefoundation 0X00007FFF7F0407BB __exceptionpreprocess + 171 1 LIBOBJC. A.dylib 0x00007fff937ada2a Objc_exception_throw + 2 corefoundation 0x 00007fff7f0bda65 +[nsexception Raise:format:] + 197 3 Quartzcore 0x00007fff84c09980 _zn2 Ca5layer12set_positionerkns_4vec2ideeb + 4 Quartzcore 0x00007fff84c09af5-[calayer s Etposition:] + 5 Quartzcore 0x00007fff84c0a14b-[calayer setframe:] + 644 6 Coreui 0x00007fff8a9b0112 _ZN20CUICORETHEMERENDERER26MAKEORUPDATESCROLLBARLAYEREPK13CUIDESCRI Ptorapp7calayer + 1284 7 Coreui 0x00007fff8a9ac317 _zn20cuicorethemerenderer19createorupdatelayerepk13cuidescriptorpp7calayer + 1755 8 CoreUI 0X00007FFF8A92E4D1 _zn11cuirenderer19createorupdatelayerepk14__cfdictionarypp7calayer + 175 9 CoreUI 0x00007fff8a931185 Cuicreateorupdatelayer + 221 AppKit 0x00007fff7d675623-[nscompositeappearance _callcoreuiwithblock:options:] + 226 AppKit 0x00007fff7cd22a9d-[nsappearance _createorupdatelayer:options:] + appkit 0x00007fff7cf9b143-[nsscrollerimp _animatetorolloverstate] + 274 AppKit 0x00007 fff7cf5ab79 __49-[nsscrollerimp _installdelayedrolloveranimation]_block_invoke + 673 AppKit 0x00007fff7ce21331-[nsscrollerimp _dowork:] + Foundation 0x00007fff80a3e C88 __nsfiredelayedperfoRM + 417 Corefoundation 0x00007fff7efc0f44 __cfrunloop_is_calling_out_to_a_timer_callback_ function__ + corefoundation 0x00007fff7efc0bd3 __cfrunloopdotimer + 1075 Cor Efoundation 0x00007fff7efc072a __cfrunloopdotimers + 298 corefoundation 0X00007FFF7EFB82F1 __cfrunlooprun + 2081 corefoundation 0x00007fff7efb7874 cfrunlooprun Specific + 420 Hitoolbox 0x00007fff7e557f6c Runcurrenteventloopinmode + 240 22 Hitoolbox 0x00007fff7e557ca9 Receivenexteventcommon + 184 Hitoolbox 0x00007fff7e557bd6 _blockuntilnexteventmatchinglistinmodewithfilter + AppKit 0x00007fff7cc4e5f5 _dpsnextevent + 1093 AppKit 0x00007fff7d35e8eb-[nsapp Lication (nsevent) _nexteVentMatchingEventMask:untilDate:inMode:dequeue:] + 1637-Tk 0x00000001047cc285 Tkgeneratebuttonevent + 494 Tk 0x00000001047cc54d Tk_macosxsetuptknotifier + 3 TCL 0x00000001048be5a8 tcl_dooneevent + 237 Tk 0X0000000104726F4F Tk_mainloop + Tk 0x0000000104732a5b tk_ma Inex + 1566 Wish 0x000000010470d55a Wish + 9562 Libdyld.dylib 0x00007fff94089255 start + 1) libc++abi.dylib:terminating with uncaught exception of type nsexceptionerror: Git-gui died of Signal 6
Workaround
Google to an effective method
brew install tcl-tkbrew link tcl-tk --forceln -s $(which wish) "/usr/local/Cellar/git/$git_version/share/git-gui/lib/Git Gui.app/Contents/MacOS/Wish"
The operation is not complicated, mainly to install a new version first TCL/TK
Then use the soft link to replace the new version of TCL/TK with the old version of the Git GUI package (preferably backed up)
It's done.
Reference links
https://github.com/git/git-scm.com/issues/853#issuecomment-254768237
MacOS Sierra Git Gui Crash Solution