Categories: Разработка

Синтаксис gitignore

Рассмотрим использование gitignore на примере проекта wordpress. Для начала перечислим правила синтаксиса:

  • Одна строка = одно правило
  • # - комментирует строку
  • Пустые строки игнорируются
  • / - каталог где находится файл gitignore
  • * - заменяет 0 и более символов
  • ? - заменяет 0 или 1 символ
  • /**/ - любые папки
  • ! - логическое "НЕ", применяется для исключения файлов и папок из общих правил
  • \ - экранирование символов
  • Для игнорирования всей директорий правило должно оканчиваться на слеш, иначе гит будет думать что это название файла.

В первую очередь, нужно добавить правила для системных файлов и файлов проектов IDE, в моем случае это может быть phpStorm или Sublime text (плагин ProjectManager).

# Для phpStorm
  .idea

# Для Sublime Text
  *.sublime-project
  *.sublime-workspace
  *.cache

# Сам файл gitignore
  .gitignore

Хранить в репозитории изображения считается плохой практикой, поэтому исключаем их, а также документы:

*.jp?g
*.png
*.gif
*.svg
*.pdf
*.xls?

Далее нам надо исключить из проекта файлы движка wordpress. Тут вариантов может быть несколько, я приведу тот, которым пользуюсь сам:

/public/*
/wp-content/*
!/wp-content/
/wp-content/themes/*
!/wp-content/themes/
/wp-content/themes/папка_темы/*
!/wp-content/themes/папка_темы/
!/wp-content/themes/папка_темы/*

Давайте разберемся, что тут происходит и зачем столько строк. У gitignore есть такая особенность, что нельзя в исключения добавить папку, если родительская папка игнорируется. Поэтому мы добавляем все файлы внутри папки /wp-content/*, а затем снимаем игнор с этой папки. При этом содержимое будет продолжать игнорироваться. И так каждый уровень вложенности. Файлы на соответствующем уровне добавляются в игнор, а сама папка перестает игнорироваться.

Почитайте также Как развернуть репозиторий на Github.

Admin

Share
Published by
Admin

Recent Posts

Отправка писем WooCommerce через GMail

Если письма с сайта не приходят, можно попробовать отправлять из через почтовый сервер gmail. Для…

7 месяцев ago

html audio play/pause button

jQuery аудио плейер на сайт для нескольких треков с кнопкой Play/Pause

1 год ago

Чек лист по закуску сайта

Favicon Фавиконка это маленькая пиктограмма сайта, нужна для отображения на вкладке браузера и в закладках.…

1 год ago

Не получается зайти в админку WordPress

При входе в админку происходит редирект на ту же страницу входа. Эта статья для вас,…

1 год ago

wp-cli RuntimeException: failed to get url No working transport found

Иногда можно получить такую ошибку: RuntimeException: failed to get url ... No working transport found…

1 год ago

wp-cli под Windows

Перед запуском wp-cli вам потребуется скачать и установить cygwin Весь wp-cli это один файл, который…

1 год ago