Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Sourcetree - parameters to reduce size of pulls

Ahmad Sidawi
Contributor
August 22, 2023

Hi,

 

We have a usecase of a large shared Git repository with many users, but certain users only wanting to pull certain data within the repo. Through the command line we can do things like sparse clones, we've noticed however that in Sourcetree many users have inadvertently pulled the entire repo resulting in over 10GB of data on their drive. I was curious what options the Sourcetree UI had for supporting a use case like this. 

We've also seen a lot of inconsistency with the size of the repository when users perform a pull through Sourcetree, some users end up with 8 to 10 GB, some with 50GB plus. What can cause these disparities?

 

Thanks

1 answer

0 votes
Martin Runge
Community Champion
July 23, 2026

Hi @Ahmad Sidawi

Sourcetree does not have a native UI option for sparse checkout or partial clone. Atlassian confirmed this; this has to be set up through the terminal. Sourcetree has a Terminal button in the toolbar for that, and once set up, it will manage the repo normally afterward.

What I would do:

  • Run git clone --filter=blob:none for a partial clone.
  • Follow with git sparse-checkout init and git sparse-checkout set <path> to scope the working tree to what each user needs.

For the size disparity between 8 to 10GB and 50GB plus pulls, I would check:

  • Git LFS settings, since different fetchinclude or fetchexclude values pull very different amounts of binary data.
  • The Recursively clone submodules option in the clone dialog, since not everyone may have this set the same way.
  • Whether some users unshallowed their clone at some point and ended up with full history.

Do you know if this repo uses Git LFS or submodules? That would narrow it down quickly.

Cheers, Martin

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events