Когда я запускаю git status, .gitignore отображается в списке неотслеживаемых файлов. Как я могу предотвратить его включение в список?
git status
Содержимое .gitignore:
images/builder/
Вы можете добавить .gitignore к вашему .gitignore файлу, но вы, вероятно, просто хотите зафиксировать его в любом случае, учитывая, что все члены вашей команды (если есть другие), вероятно, будут иметь те же файлы, перечисленные в .gitignore.
.gitignore
Чтобы пояснить, что говорили другие, есть три категории вещей, которые исключены, и git использует разные файлы исключений для каждой категории:
Материал, с которым все работаютв проекте хотите исключить - например, *.o, имена сгенерированных исполняемых файлов, другие сгенерированные сборкой файлы, которые вы не хотите регистрировать.
*.o
В этом случае вы используете .gitignore вкаталоги проекта (как вы делаете).Поскольку вы хотите, чтобы все, кто работает над проектом, поделились этими исключениями, вы должны добавить эти .gitignore файлы, используя git add, и зафиксировать их как исходные файлы.
git add
Материал, который вы лично хотитеисключить для всех ваших проектов, но другие, работающие над теми же проектами, не могут.Например, я использую редактор Emacs, который создает файлы резервных копий, такие как Foo.~1~, так что это то, что я исключаю лично для всех моих проверок git
Foo.~1~
В этом случае вы используете «персональный» файл игнорирования, обычно вваш домашний каталог называется что-то вроде ~/.gitignore;имя этого файла фактически задается как глобальный параметр git, поэтому, например, вы можете сделать:
~/.gitignore
git config --global core.excludesfile ~/.gitignore
[Поскольку это глобальная настройка, вам нужно сделать это только один раз.]
Итак, для моих файлов резервных копий Emacs я добавляю шаблон типа *~ в ~/.gitignore.
*~
Материал, который вы хотите исключить «локально» в определенном рабочем дереве,но, возможно, не для других рабочих деревьев.
Для этого случая вам следует добавить исключающие записи в файл .git/info/exclude.Поскольку этот файл находится в каталоге magic .git, команда status никогда не покажет его как неотслеживаемый файл (и вы не можете его добавить).
.git/info/exclude
.git
Git использует все эти исключенияфайлы вместе, чтобы решить, что исключено.
.gitignore должен быть частью вашего кода.Вы, конечно, не хотите исключать, так как это способ сказать вашим товарищам по команде (или себе на другом компьютере), какие файлы не должны быть переданы
Просто зафиксируйте файл. Затем он уйдет из списка. (Сначала я находил это странным.) Вы по-прежнему сможете редактировать его, чтобы добавить больше элементов в будущем. А затем совершите еще раз, чтобы игнорировать их