Шаблоны .gitignore
Часть раздела Контроль версий путешествия по Terminal на Coddy — урок 20 из 58.
Шаблоны внутри .gitignore следуют нескольким простым правилам:
secret.txt: игнорировать файл с точным именем в любом месте репозитория*.log: игнорировать каждый файл, заканчивающийся на.logbuild/: игнорировать весь каталогbuildи всё его содержимое
logs/*.tmp: игнорировать.tmpфайлы только внутриlogs/#: начинает строку комментария; игнорируется Git!important.log: исключение. Даже если предыдущее правило совпало с ним, этот файл не игнорируется
Порядок имеет значение, когда вы смешиваете правила и исключения. Более поздние шаблоны переопределяют более ранние для файлов, которым они оба соответствуют.
Важное предупреждение: .gitignore влияет только на те файлы, которые еще не отслеживаются. Если файл уже был зафиксирован (committed), добавление его в .gitignore не заставит Git прекратить его отслеживание. Сначала вам нужно будет удалить его из индекса.
Задание
ЛегкоПапка содержит: main.py, secret.txt, tmp/cache.dat и tmp/keep.md. Инициализируйте репозиторий, создайте .gitignore с этими двумя строками:
secret.txt
tmp/Затем выполните git status --short. Только .gitignore и main.py должны отображаться как неотслеживаемые.
Шпаргалка
Правила шаблонов .gitignore:
secret.txt— игнорировать файл с точным именем в любом месте репозитория*.log— игнорировать все файлы, заканчивающиеся на.logbuild/— игнорировать весь каталог и его содержимоеlogs/*.tmp— игнорировать файлы.tmpтолько внутриlogs/#comment— строка комментария, игнорируется Git!important.log— исключение: не игнорировать этот файл
Более поздние шаблоны переопределяют более ранние. .gitignore влияет только на неотслеживаемые (untracked) файлы; уже зафиксированные файлы должны быть сначала удалены из индекса.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Контроль версий
2Начало работы
Инициализация репозиторияПапка .gitНастройка данных пользователяGit StatusИтоги — первый репозиторий5Игнорирование файлов
Зачем игнорировать файлыШаблоны .gitignoreПроверка правил игнорированияИтоги: чистый репозиторий8Слияние
Что такое слияниеСлияние Fast-ForwardТрёхстороннее слияниеКонфликты слиянияРазрешение конфликтаИтоги — Мастер слияния11Проект: Feature Branch
Обзор проектаИнициализация Main3Отслеживание изменений
Область подготовкиGit AddGit CommitИзменение отслеживаемого файлаGit LogИтоги: первые коммиты6Проект: Сайт рецептов
Обзор проектаИнициализация и игнорирование