40%-85% cpu utilization
Asked by Robbie Blackwell:

I have started noticing over the past couple of weeks that SourceTree is really hogging the CPU.

<br />

It's so bad that I'm getting periods of interruption that prevent me from doing anything. Moving mouse cursor, alt tabbing etc.

<br />

I only have 1 active repos with 2 branches (one dev, one production branch), fairly small I'd say, no significant development going on. My last commit only had 20 lines of code in one file.  
One thing I notice, if it's of any relevance is a green loading type of animation on the left side, right above File Status, and beneath the Commit Push Pull buttons.

"Idle" activity is about 50% cpu.  
I'm on version 2.3.1.0  
But I feel like it's been like this after some recent update where during install it asked me to login to my atlassian account. I'm on a very old Core 2 Duo. But up until recently I've never had any problems. I don't have issues with other programs.

<br />

screen grab of task manager <http://prntscr.com/gjyxx6>


Answers:
author: Simon Stockenreitner
body: I have solved it by updating git.

<https://git-scm.com/>


author: Nguy?n_V?n_D?ng
body: You can try delete folder .git in C:\\Users\\{YourUsers} if it exsisted. It work for me :))))))


author: minnsey
body: Hi  

I don't know if the problems have occured when switching from a version 1.x to a version 2.x install?  

Version 2.x makes use of libgit2 for a number of read actions on git repositories, rather than relying on the git.exe for all actions. A side effect of this change is that the git processing is now 'in-process' rather than being external and so will push up the memory and CPU usuage associated with Sourcetree. Previously some of this load would have been seen as due to git.exe.

Sourcetree will trigger git status updates if it detects changes to the filesystem. If there are build processes running that alter files within the git repo, Sourcetree will react.  

Sourcetree attempts to limit this by ignoring changes to files covered by the .gitignore.

It is possible to turn off this file system watching in the Tools/Options/General tab.  

It is also possible to disable libgit2 and revert to a pure git.exe approach in the Tools/Option/GIt tab.

comments: author: Robbie Blackwell
body: I honestly don't remember when I installed 2x but I feel like I had a decent run on 2.x prior to my original post where I didn't have any problems.

The checkbox to disable libgit2 didn't seem to help me.

What is the exact name of the option in tools/options/general?

Sourcetree is virtually unusable for me right now.

Wen I do something as minor as changing the down menu in the file status tap from say pending, modified or untracked etc it's just virtually unusable. It is only using 30-40% cpu and my total load in task manager is usually below 60% the sourcetree window becomes unresponsive

It's just as bad if I have launched for the first time. I have to wait a few minutes before I can do anything.

<http://prntscr.com/gtagof>

Half the time if I click on tools or help, it will freeze up and say not responding before I can even click on an option.

Is it possible to download something a few versions earlier than 2.3.1.0?


author: Robbie Blackwell
body: I've uploaded a video of my user experience. This is basically from a fresh boot. The only other programs running are our office chat, and our phone dashboard utility.

<https://youtu.be/q9LOlVcIHzk>


author: minnsey
body: Hi,

Once the repo is open can you run the Repository/Benchmark Repo Performance option and post up the results using libgit2 and not using libgit2.  

Also I notice you are using a very old version of Git 1.9.5, can you try upgrading that to 2.14 or above. You can do that in the Tools/Options/Git tab.  
(This should give some performance improvement, but probably not a significant amount)


author: Robbie Blackwell
body: It's literally impossible for me to do anything in any reasonable amount of time. It took about ten minutes before I could go to options and the git tab. Clicking on update embedded git and I've been frozen on and off again for the past 15 minutes. Every operation locks up source tree. I had to click the update button twice after significant lock up until it finally asked if I was sure I wanted to redownload embedded git. At which point it locked up again when I choose yes. It seems every operation takes twice before it actually works but then it locks up again while it tries to make progress.

I think it took about 40 minutes to finally update embedded git.

Maybe the best course would be to completely uninstall every trace of source tree and install clean. Is there any other way besides just using add/remove programs? Should I check user/appdata folder? What other folders might have traces of settings or other files?


author: Robbie Blackwell
body: I uninstalled and I'm looking through app data for extra things to remove. I came across the Atlassian folder which appears to have history of my sourcetree upgrades.

This is my upgrade history

09/08/2015 \| 11:50 \| 1.6.14.0  
12/18/2015 \| 11:09 \| 1.6.20.0  
02/11/2016 \| 11:39 \| 1.7.0.32509  
02/25/2016 \| 09:15 \| 1.8.2.0  
03/03/2016 \| 09:45 \| 1.8.2.2  
03/24/2016 \| 10:10 \| 1.8.2.3  
07/19/2016 \| 13:04 \| 1.8.3.0  
05/18/2017 \| 15:43 \| 1.9.10.0  
08/16/2016 \| 08:20 \| 1.9.5.0  
12/28/2016 \| 09:56 \| 1.9.6.1  
06/21/2017 \| 11:48 \| 2.0.20.1  
08/14/2017 \| 09:34 \| 2.1.2.5  
08/28/2017 \| 13:21 \| 2.1.10.0  
09/11/2017 \| 13:37 \| 2.1.11.0  
10/11/2017 \| 13:48 \| 2.3.1.0

I first encountered the slowness with 2.1.11.0

I went to your archive <https://www.sourcetreeapp.com/download-archives>

and downloaded SourceTreeSetup-2.1.2.5 but incidentally it doesn't actually install, it just runs source tree and it even knows my existing repos. (edit; apparently it did install into C:\\Users\\myuser\\AppData\\Local\\SourceTree\\app-2.1.2.5 but it didn't ask where to install, make a start menu entry or associate with clone in source tree urls from bitbucket)

On a positive note, it is smooth as butter just like I remember. And incidentally it is using embedded git 2.14.1 + git-lfs v2.2.1 which was updated before I uninstalled source tree 2.3.1.0

Normally I'm all for trying to troubleshoot but right now I just don't have the time.