How do you get git to ignore all contents of a directory?

Viewed 14013

I have a git directory which contains the a whole bunch of files and then has a directory called 'sessions'. 'sessions' contains cookie information for my web.py program.

I need the folder 'sessions' to remain in the git repository because without the folder the program does not function correctly. I don't need the actual contents of folder being stored in the git directory.

So the question is:

How can I get git to ignore the contents of a folder but not the folder itself?

3 Answers

If I'm remembering correctly, you can do this by creating a .gitignore file in the sessions folder with [^.]* as its contents.

Since July 2007, gitignore does describe the exclusion patterns.

If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory.

In other words, foo/ will match a directory foo and paths underneath it, but will not match a regular file or a symbolic link foo (this is consistent with the way how pathspec works in general in git).

As illustrated by this thread, that pattern was not always expressed with a '/' for matching directory.

Related