Skip to content

Instantly share code, notes, and snippets.

Star You must be signed in to star a gist
What would you like to do?

If .DS_Store was never added to your git repository, simply add it to your .gitignore file.

If you don't have one, create a file called


In your the root directory of your app and simply write


In it. This will never allow the .DS_Store file to sneak in your git.

if it's already there, write in your terminal:

find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

then commit and push the changes to remove the .DS_Store from your remote repo:

git commit -m "Remove .DS_Store from everywhere"

git push origin master

And now add .DS_Store to your .gitignore file, and then again commit and push with the 2 last pieces of code (git commit..., git push...)

Other Solution

If .DS_Store already committed:

find . -name .DS_Store -print0 | xargs -0 git rm --ignore-unmatch

To ignore them in all repository: (sometimes it named ._.DS_Store)

echo ".DS_Store" >> ~/.gitignore_global
echo "._.DS_Store" >> ~/.gitignore_global
echo "**/.DS_Store" >> ~/.gitignore_global
echo "**/._.DS_Store" >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global
Copy link

onns commented Apr 24, 2021

Thank you for the instruction and I wanna know if only **/.DS_Store is enough for the ignore files, as it says in gitignore documentation that A leading "**" followed by a slash means match in all directories.

Copy link

Thank you for the clear instruction, great help !

Copy link

Thank you so much:)

Copy link

it work for me thank you very much.

Copy link

It worked really well for me too, ty =)

Copy link

Oh, thanks a lot

Copy link

LFClaro commented Dec 3, 2021

Just what I was looking for! Thank you so much for this.

Copy link

nk-vo commented May 15, 2022

thanks for this!

Copy link

This helped me, thanks a lot🙌

Copy link

abrizah commented Jun 20, 2022

Thanks! Perfection!

Copy link

muhdavi commented Jul 10, 2022

thanks, helpful!!!

Copy link


Copy link

njpl3 commented Sep 7, 2022

Worked perfectly, thank you!

Copy link

thank you

Copy link

nivel10 commented Dec 4, 2022

Thank you. Sir...!!!!

Copy link

Thank you!

Copy link

Worked without a flaw! Thanks

Copy link

Thank you!

Copy link

Thank you 👍🏻

Copy link

Thank you for the detailed help. It worked for me as soon as I ran the following command:

find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch

Copy link


Copy link

Thanks, buddy!

Copy link

Additionally, you might want to add these lines, to make sure your personal Xcode config is not proliferated:

User settings


Xcode 8 and earlier


Copy link


Copy link

It worked for me. Thank you!

Copy link

Helped to me add files in gitignore

Copy link

ivyzbot commented Aug 21, 2023

Many thanks for the clear clarification!

Copy link

Thanks for providing the step-by-step!

Copy link

Works great, thanks!

Copy link

opsquid commented Sep 10, 2023

Thank you! It saves my day.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment