Где находится файл .gitignore?


357

Принадлежит ли файл .gitignore структуре папок .git где-нибудь или в основных исходных файлах?


20
Вы можете иметь .gitignore в каждом каталоге вашего проекта. Однако рекомендуется использовать один файл .gitignore в корневом каталоге проекта и помещать в него все файлы, которые вы хотите игнорировать.
Паван Гупта

Я бы за то, что принял неправильный ответ.
Аарон Холл

@AaronHall - переключил .... не пересматривал это некоторое время .....
mishaF

Ответы:


428

Поместите .gitignore в рабочий каталог. Это не сработает, если вы поместите его в каталог .git (хранилище).

$ ls -1d .git*
.git
.gitignore

20
Это фактический ответ. Хорошо, что вы понимаете вопрос :)
Mario SE

15
Это неоднозначный ответ ИМО. Где в рабочем каталоге? В корне это? Где угодно?
Карл Алколея,

6
@CarlesAlcolea, в ответе говорится, что вы можете поместить .gitignoreфайл в любое место рабочего каталога, то есть в любую папку, где преобладает ваш код. Сказав это, лучшая практика будет помещать .gitignoreфайл в корневой каталог. Это означает один .gitignoreфайл для одного всего репо. Это делает управление проигнорированными файлами более эффективным.
Энди

10
Мне нужно дополнительное объяснение. Что произойдет, если .gitignore находится в подкаталоге? Это просто регулирует подкаталог и его ветви? Можно ли иметь несколько .gitignore в разных подкаталогах? Будет ли иметь .gitignores с другими правилами в подкаталогах каскадно по сравнению с .gitignores директории parrent?
Behrooz Karjoo

72

Как указано в других ответах, вы можете поместить их .gitignoreв любой каталог в Git-репозитории. Однако, если вам нужна частная версия .gitignore, вы можете добавить правила в .git/info/excludeфайл.


4
Также core.excludesfile(см. Git-config (1) ), чтобы указать файл, в котором хранятся ваши персональные шаблоны исключений (ваш любимый шаблон именования «временных файлов», резервные / временные файлы вашего редактора и т. Д.). Соответственно, избегайте размещения «личных шаблонов» в отслеживаемых .gitignoreфайлах.
Крис Джонсен

2
Приватная часть этого ответа была очень полезной, поскольку у меня есть несколько изменений в проекте, которые не входят в зарегистрированный .gitignoreфайл.
OregonGhost

57

Вы можете поместить .gitignore в любой каталог в git.

Он обычно используется в качестве файла-заполнителя в папках, поскольку git обычно не отслеживает папки.


7
почему вы можете положить его куда угодно? Почему Git не запутался?
Чарли Паркер

3
Таким образом, файл .gitignore может помещаться в сам каталог .git, не так ли? (Какой был оригинальный вопрос). Какой цели это послужит?
Бакар


8

Если вы хотите сделать это глобально, вы можете использовать путь по умолчанию, который будет искать git. Просто поместите его в файл с именем «ignore» в пути~/.config/git

(так полный путь для файла: ~/.config/git/ignore)


3

Вы также можете найти глобальный .gitignore непосредственно по пути ~, если вы не создали его в своем проекте папки. Этот файл учитывается всеми вашими проектами .git.


0

Кроме того, если вы создадите новую учетную запись на Github, у вас будет возможность добавить .gitignore, и она будет автоматически настроена в правильном / стандартном месте вашего рабочего места. Вам не нужно ничего добавлять туда в начале, просто измените содержимое в любое время.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.