It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Git LFS track does not work with space and/or bracket


This question is linked to this issue I opened on Git LFS:


To sum it up:

I tried to push large files in LFS based on specific folders. 

My gitAttributes file contains the following lines:

Fake[[:space:]]Folder/SomeOtherFake/**/*.jpg filter=lfs diff=lfs merge=lfs -text
Fake[[:space:]]Folder/\[braketFolder\]/**/*.jpg filter=lfs diff=lfs merge=lfs -text


My folder hierarchy is:

Fake Folder/bigPicture.jpg
Fake Folder/SomeOtherFake/bigPicture.jpg
Fake Folder/SomeOtherFake/LastFake/bigPicture.jpg
Fake Folder/[braketFolder]/bigPicture.jpg
Fake Folder/[braketFolder]/SomeUnderBraket/bigPicture.jpg


When I use git with the command line, everything work fine. 


With SourceTree I have two problems:

1) With the space, nothing works. Regardless of the "BigPicture" file I choose, I always get the warning asking me to track it on LFS first.

2) When removing the space in the first folder, I am able to stage the "BigPicture" following files:

Fake Folder/SomeOtherFake/LastFake/bigPicture.jpg
Fake Folder/[braketFolder]/SomeUnderBraket/bigPicture.jpg

But not the follwing ones:

Fake Folder/SomeOtherFake/bigPicture.jpg
Fake Folder/[braketFolder]/bigPicture.jpg

Which is weird because the "SomeOtherFake/**/*.jpg" path should target any file directly in SomeOtherFake or in any folder under SomeOtherFake.


Did I miss something?


Thanks in advance!






2 answers

0 votes
Mike Corsaro Atlassian Team Oct 18, 2017

Hello! First, which OS are you using?


Second: this sounds like a bug in the way Sourcetree parses the filters. In the meantime as a work-around, you can use:

*.jpg filter=lfs diff=lfs merge=lfs -text

 to track all files with that extension

We are on Windows (some on 7 and some on 10)


Yep, we could do that for the .png and .jpg and some other "Picture" or "DataOnly" format.



But we are using unity asset to store gameplay data that are quite light and some 3d data that are quite heavy. We would like to push 3d data unity asset to lfs while keeping the gameplay oriented data on "normal" git.

Which, if I am not mistaking would allow us more option for working on the same asset on different post/branches...


To be fair, we are using lfs for the first time so we are not "expert" in why or how to do things...


Another surprise appear yesterday. And once again it does not happen in git bash... 

When you remove in unity some ".jpg" file which are already tracked by lfs, when you open sourcetree, they will be downloaded again... You have to open sourcetree first, then remove your files in unity, then commit the removed files on sourcetree to avoid them to be downloaded again.

I do not know if it's also a bug or if it is intended... 

Suggest an answer

Log in or Sign up to answer
Community showcase
Published in Sourcetree

Sourcetree for Windows - CVE-2019-11582 - Remote Code Execution vulnerability

A vulnerability has been published today in regards to Sourcetree for Windows.  The goal of this article is to give you a summary of information we have gathered from Atlassian Community as a st...

4,910 views 0 12
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you