Уже есть несколько подобных вопросов, но у меня нет ни одного из ответов.
Я хочу игнорировать все в папках под моим хранилищем, кроме файлов с * .foo
(Если кому-то интересно, как это можно оправдать - я на самом деле делаю git-репозиторий для всех своих проектов "Logic" - музыкального программного обеспечения на Mac - но я хочу хранить только реальные файлы проекта * .logic)
Я собираюсь изложить это, так что мы все на одной тарелке.
Вот что я делаю, начиная с нуля:
Установка:
mkdir temp
cd temp
mkdir testdir
cd testdir
touch include.foo
touch dontinclude.bad
cd..
git init
touch .gitignore
Вставьте это в .gitignore
# Ignore all
/*
# But not these files...
!.gitignore
!*.foo
git status
И единственный неотслеживаемый файл - это .gitignore
если я набрал 'git add.' - без изменений, виден только .gitignore, а мои 2 файла игнорируются.
Почему это не работает и как вы можете изменить описанную выше процедуру, чтобы она работала?
Вот чрезвычайно схожий вопрос, откуда я получил файл .gitignore.
Я использую git --version 1.7.7 (также пробовал 1.7.3) - .gitignore, чтобы игнорировать все файлы, а затем рекурсивно разрешает файлы определенного типа