Tutorial :How do you gitignore everything except a directory?


I am trying to sync my desktop and laptop using a cron'd git. It works beautifully on a single directory. However I want to sync multiple config files scattered about and some other things. To do this decided to turn my home folder into a git directory and ignore everything except for a few select files and directories.

$ cat .gitignore  *  # test is a directory  !test  

Does not work. Looking at another stackoverflow question, I found */ and used it instead of *. That almost worked as I wanted it to, but then all of the random single hidden files I have scattered about my home directory showed up.


From my git ignore in my home directory.


Then you have to git add -f stuff you want to commit. Least that is how I do it for my configs.


What works for me:

# Ignore every directory  /*  # Except this one  !/test  


# Ignore every file  *  # Except these ones  !test  !test/*  !test/*/*  




instead. I'm not sure if this will work (wild guess), but it is worth a try.


$ cat .gitignore  **/*  *  # test is a directory  !test  

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »