gitignore
https://git-scm.com/docs/gitignore - gitignore https://mirrors.edge.kernel.org/pub/software/scm/git/docs/gitignore.html
Основной синтаксис:
- Каждая строка - отдельный шаблон
- Пустые строки игнорируются
- Строки начинающиеся с # являются комментариями
- Символ "/" в начале строки указывает на текущую папку (где лежит .gitignore)
- Звёздочка(*) заменяет любое количество символов, но не /
- Две звёздочки(**) используются для указания всех подпапок.
- Восклицательный знак(!) в начале строки инвертирует шаблон (используется для исключений). An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again. It is not possible to re-include a file if a parent directory of that file is excluded. Git doesn’t list excluded directories for performance reasons, so any patterns on contained files have no effect, no matter where they are defined. Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!", for example, "\!important!.txt".
- Для экранирования спецсимволов используется обратный слэш "\".
- If there is a separator at the end of the pattern then the pattern will only match directories, otherwise the pattern can match both files and directories.
- Trailing spaces are ignored unless they are quoted with backslash ("\").
Шаблоны, специфичные для вашего локального репозитория и не подлежащие распространению в другие репозитории, должны быть установлены в файле .git/info/exclude .
Git также позволяет вам создать глобальный файл .gitignore, в котором вы можете определить правила игнорирования для каждого репозитория Git в вашей локальной системе.
git config --global core.excludesfile ~/путь_и_имя_файла
Чтобы проигнорировать файл, который был ранее зафиксирован, вам нужно деактивировать и удалить файл из индекса, а затем добавить правило для файла в .gitignore:
git rm –cached filename git rm -r –cached directory
-n - dry-run, позволит посмотреть, что будет сделано.
Чтобы проверить, почему файл dir/filename игнорируется, вы должны запустить:
git check-ignore -v dir/filename
Вывод показывает путь к файлу gitignore, номер совпадающей строки и фактический шаблон.
www/.gitignore:31:/filename dir/filename
Команда принимает в качестве аргументов более одного имени файла, и файл не обязательно должен существовать в вашем рабочем дереве.
Команда git status с параметром –ignored отображает список всех игнорируемых файлов:
git status –ignored