Подтвердить что ты не робот

Как вы можете git игнорировать все содержимое каталога?

У меня есть каталог git, который содержит целую кучу файлов, а затем имеет каталог под названием "сеансы". "session" содержит информацию о файлах cookie для моей программы web.py.

Мне нужна папка "сеансы", чтобы оставаться в репозитории git, потому что без папки программа работает некорректно. Мне не нужно фактическое содержимое папки, хранящейся в каталоге git.

Итак, вопрос:

Как я могу получить git для игнорирования содержимого папки, но не самой папки?

4b9b3361

Ответ 1

Если я правильно помню, вы можете сделать это, создав файл .gitignore в папке sessions с [^.]* в качестве его содержимого.

Ответ 2

Добавить сеанс / .gitignore с файлом

*
!.gitignore

Вторая строка сообщает git не игнорировать файл .gitignore, поэтому папка не пуста, но все остальное игнорируется.

Ответ 3

Поскольку июль 2007 г., gitignore описывает схемы исключения.

Если шаблон заканчивается косой чертой, он удаляется с целью следующего описания, но он найдет совпадение только с каталогом.

Другими словами, foo/будет соответствовать каталогу foo и paths под ним, но не будет соответствовать регулярному файлу или символической ссылке foo (это согласуется с тем, как работает pathspec вообще в git).

Как проиллюстрированный этим потоком, этот шаблон не всегда был выражен с помощью '/' для сопоставления каталога.