SourceTree Hangs (not responding) on Windows 10 (Unity Large Project)
Asked by Nadim Alam:

++**Context**++:

- Using Windows 10;

- Using Visual Studio remote repository.

- Project is a Unity project that is very large (90 GB's+)

++**Issues**++:

- Source Tree is extremely slow and not responding after a click. Sometimes it comes back but then after a few seconds it starts hanging again.

++**History to when issue started**++:

- I had a few thousand UNSTAGGED files, i selected a bunch of them and chose to STAGE them. After i waited for about an hour, i selected a few more hundred files and chose to Stage them too. This is how i always do it in the past.

- The third time i again i selected a few hundred files and pressed Stage. But this time i got an error message back from Git saying something like, a git process is already in process. Manually remove the file index.lock and try again etc... Completed but with errors.

- I waited for a long time, tried again, but same issue. At some point SourceTree also crashed too.

- I then went into my unity project folder found the hidden folder called .git

- Inside .git was a file called index, i deleted this file.

- I Re-opened up sourcetree but from now its always very slow and hangs very often and says Not responding.

- When the program does respond, i quickly go to a Stagged file and try Unstage it. Nothing happens and still shows the same error as above saying Completed with Errors, git process already in process etc...

Please Can someone help? Im very afraid to loose all my work, as due to the large size of project and the amount of time it takes to push the changes i only backup the project onto git once a month.

I was contemplating to delete the .git folder in my unity project and try open the project up again, but that might make things ever worse! I think some of the git files maybe corrupted or something.

Thanks.


Answers:
author: minnsey
body: HI  

First I will say that is an impressively large repo and I would suggest it is unwise to have so many files that need staging all at the same time, also that we do not routinely test SourceTree at that scale.  

However there are a couple of things you can try to help.  

In Tools/Options/General tab turn off the option "Refresh automatically when files change" also turn off the option @"check default remotes...".  

This will disable any background git.exe processes, you migth want to restart SourceTree to make sure there are no orphaned processes still running. This shoudl help with performance, though you also need to use F5 to refresh the UI when you want to see the latest state.  

Other than that, with that many files to be staged etc, you might want to use the terminal and use command line git.

comments: author: Nadim Alam
body: Hi [@minnsey](/t5/user/viewprofilepage/user-id/502201) thanks for that, i will try it next time. For now i was able to get it to work by using another git software instead.

I see that you dont recommend me use such a large project which is over 100gb's. But as you may know developing games is rather huge, and with models, audio, etc... getting to a large project folder i guess would be quite normal?!

Im wondering if you know of any better ways game developers backup there projects if not to use online repos for there huge projects?

One question i have for you actually, is that now even thugh i was able to Stage all the files and Commit them, i am unable to push the changes!! Everytime i try this, i get some sort of timeout error that comes up after 1-2 hours of trying to push. I cant recall the exact error message. Im using visualStudioOnline for my repos.

Thanks.


author: Ana Retamal
body: Hi [@Nadim Alam](/t5/user/viewprofilepage/user-id/1144021) , if your repo contains binaries (media data, models, audio, etc) I'd recommend you to use Git LFS (Large File Storage). You can read more about it at [Git LFS](https://www.atlassian.com/git/tutorials/git-lfs).

Hope that helps!

Ana


author: Sn3akyP3t3
body: Git at Enterprise Scale. Worth a read! [https://blogs.msdn.microsoft.com/bharry/2017/05/24/the-largest-git-repo-on-the-planet/](https://blogs.msdn.microsoft.com/bharry/2017/05/24/the-largest-git-repo-on-the-planet/?)

Here's the Git Virtual File System project: <https://github.com/Microsoft/GVFS>


Tags: git