Git игнорирует файлы, которые не находятся в gitignore

У меня есть git-репозиторий, который игнорирует файлы изображений, а также несколько других файлов, но мой.gitignore файл имеет только игнорированиеconfig.php файл. Есть ли какой-нибудь глобальный файл игнорирования, который я не могу найти? Я должен указать файлы, чтобы добавить их сейчас, и это дает мне это предупреждение:

Следующие пути игнорируются одним из ваших файлов .gitignore.

Содержание моего~/.gitconfig файл только мой адрес электронной почты.

 krlmlr12 июн. 2018 г., 11:06

Ответы на вопрос(13)

й знак. Может проверить там?

 Shahar26 янв. 2016 г., 10:37
Это была проблема для меня. У меня был * .png, понятия не имею, как он туда попал.

Проверьте это:

Вы искали другие файлы .gitignore, так как их может быть много.

Кроме того, посмотрите REPO / .git / config, чтобы увидеть, есть ли там что-нибудь.

Исключение репо Локальные правила репо могут быть добавлены в файл .git / info / exclude в вашем репо. Эти правила не привязаны к репо, поэтому они не передаются другим. Этот метод можно использовать для локально сгенерированных файлов, которые, как вы ожидаете, не будут генерировать другие пользователи, например, файлы, созданные вашим редактором.

 Next Developer15 авг. 2016 г., 17:51
Непонятно, почему этот ответ помечен как ответ. Как именно эта проблема была решена?
 Ian Hunter24 февр. 2012 г., 20:13
В репозитории нет других файлов .gitignore, а в файле .git / config ничего не игнорируется. Как настроен .git / info / exclude?
 Chucky14 июн. 2017 г., 11:05
исключить была моя проблема. Я знал, что есть другой способ игнорировать, который я использовал в прошлом, но забыл, где это было!

Убедитесь, что.gitignore Файл не игнорирует себя. Распространенной ошибкой является добавление* править.gitignore файл, чтобы игнорировать каждый файл в текущей папке. Решением этой проблемы является добавление исключения в.gitignore:

*
!.gitignore

Таким образом, все файлы в каталоге будут игнорироваться, кроме.gitignore.

➭ git add app/views/admin/tags/
The following paths are ignored by one of your .gitignore files:
app/views/admin/tags
Use -f if you really want to add them.
fatal: no files added

Я наконец понял, что моя проблема была чертой в моем~/.gitignore_global:

TAGS

который соответствовал путиapp/views/admin/tags, Я исправил это, добавив косую черту в глобальный файл gitignore

/TAGS

и git снова начал отслеживать мой каталог.

 Kate29 февр. 2016 г., 13:21
У меня точно такая же проблема. SourceTree устанавливает файл ~ / .gitignore_global в меню «Сервис» -> «Параметры» -> вкладка «Git». После того как я очистил поле Global Ignore list "git add ..." сработала команда.
 Abdul Sadik Yalcin24 сент. 2018 г., 12:31
Я была такая же проблема. я имелhelp каталог, который игнорировался. К счастью, я нашла твой ответ довольно быстро.
 Trev02 мая 2013 г., 04:09
+1 за то, что заставил меня искать частичные совпадения ... gitignore_global.txt содержал «[Rr] elease * /», из-за чего мой каталог «releasenotes» игнорировался.
 ccleve09 янв. 2015 г., 19:10
Чтобы сделать это еще сложнее, git будет игнорировать только недавно добавленные файлы, а не те, которые уже находятся в репо. Поэтому, когда я добавил «foo /» в мой .gitignore, он игнорировал только недавно добавленные файлы в подкаталогах foo, а не все файлы. Мне потребовался час, чтобы понять, почему некоторые файлы игнорировались, а другие - нет.

вызывающая проблему ...

Не работа

/srv/bootstrap/

работай

srv/bootstrap/

что у вас есть разрешение на папку. Я только что столкнулся с этим, и это было, потому что папка принадлежала пользователю www-данных, а не пользователю, в котором я вошел в терминал как.

что и у вас. Единственный ответ, который вы получили, перечислил несколько мест, чтобы проверить, но ни одно из них не решило проблему для меня, и из вашего комментария я тоже не думаю, что для вас. У меня не было ДРУГИХ файлов .gitignore, скрывающихся ниже в дереве каталогов; ничего в .git / config; ничего в .git / ingore / exclude

Если проблема не устранена, проверьтеэтот ответ, Это решило проблему для меня

По сути, проверьте наличие файла ~ / .gitignore. Моя была названа ~ / .gitignore_global. Я не знаю, когда это было создано (I конечно, не сделал этого), но я попробовал тонну различных настроек git при первой установке, поэтому один из них, должно быть, положил его туда.

Надеюсь, что его ответ вам тоже поможет!

у меня был каталог B со своим собственным.git репозиторий вложен в мою директорию проекта A (но не в виде подмодуля). Я сделал так, я изменился на B, и хотел превратить его в добросовестный подмодуль. Я считаю, что git A автоматически игнорировал B, потому что он содержал свой собственный репозиторий (см.Вложенные git-репозитории без подмодулей?). Я переименовал папку B и снова попытался ее клонировать как подмодуль, и это привело меня к вводящему в заблуждение сообщению об ошибке «игнорируется .gitignore». Решение было удалить.git из Б.

что ваша конфигурация git может содержать файл core.excludesfile, который представляет собой путь к файлу с дополнительными шаблонами, которые игнорируются. Вы можете узнать, есть ли у вас такая конфигурация, запустив (в проблемном git-репо):

git config core.excludesfile

Если он печатает путь к файлу, посмотрите на содержимое этого файла для получения дополнительной информации.

В моем случае я установил git через старую версиюсамшитовый который проигнорировал шаблон 'Icon?' что в моем случае дало мне предупреждение, упомянутое в этом вопросе, для значков папок (я нахожусь в нечувствительной к регистру файловой системе, поэтому Icon? соответствует значкам).

 lifo26 мар. 2014 г., 12:49
Это было сложно найти. Спасибо за внимание.
 Mechanical Object28 нояб. 2014 г., 00:58
Спасибо, вы сэкономили мне часы чистой агонии. В моем случае это была установка дерева исходных текстов (инструмент визуализации git repo), который нелогично создал в папке документов файл gitignore_global.txt, который включал множество исключений.
 Justin Skiles10 дек. 2015 г., 02:25
У меня было то же самоеIcon? Быть игнорированным.
 Madness04 окт. 2016 г., 12:23
Это был случай для меня. В глобальном файле игнорирования было довольно много правил. Спасибо за совет +1
 toxaq26 февр. 2014 г., 07:06
Это была действительно моя проблема. Не уверен, как и когда этот файл редактировался, но в нем был файл, который я хотел перечислить

если каталог, в котором вы находитесь, требует root-доступа для записи или выполнения, убедитесь, что вы являетесь пользователем root. Я действительно получил странную ошибку, когда пытался добавить подмодуль, а git продолжал жаловаться, что путь, в который я клонировал, игнорировался файлом git ignore. Затем я переключился на пользователя root, снова запустил подмодуль add, и проблем не было.

енииgit submodule add команда, когда предыдущая команда git потерпела крах и покинула файл блокировки (это может произойти, например, когда вы используете пользовательские сценарии, которые включают команды git, и вы не заметили сбой).

Если вы выполните командуgit commit вместо этого пока ни одно из условий не изменилось (git submodule add будет продолжать кричать, что ваш.gitignore файлы виноваты), вы увидитееще один вместо сообщения об ошибке:

$ git commit -a
fatal: Unable to create '..../.git/index.lock': File exists.

If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.

и действительно удаляя файл блокировки:

rm .git/index.lock

решает проблему. (Это происходит с git версии 2.1.0.9736. Это может быть исправлено в будущих выпусках git.)

 JDawgg16 мар. 2017 г., 04:21
Спасибо, это оказалось проблемой, с которой я столкнулся. Спасатель жизни!
Решение Вопроса
git check-ignore

git check-ignore команда для отладки вашего файла gitignore (исключая файлы).

Например:

$ git check-ignore -v config.php
.gitignore:2:src    config.php

Выше приведены подробные сведения о соответствии шаблона (если есть) для каждого заданного имени пути (включая строку).

Так что, возможно, ваше расширение файла не игнорируется, а весь каталог.

Возвращенный формат:

<source> <COLON> <linenum> <COLON> <pattern> <HT> <pathname>

Или используйте следующую команду, чтобы напечатать.gitignore в папке пользователя HOME и репозитория:

cat ~/.gitignore "$(git rev-parse --show-toplevel)"/.gitignore "$(git rev-parse --show-toplevel)"/.git/info/exclude

Альтернативно использоватьgit add -f что позволяет добавлять в противном случае игнорируемые файлы.

Видеть:man gitignore, man git-check-ignore Больше подробностей.

Синтаксис

git check-ignore [опции] путь к файлу…

git check-ignore [опции] --stdin

 MvcCmsJon16 июл. 2015 г., 18:22
Это было то, что мне было нужно, все заглавные буквы спасибо
 Manuel Arwed Schmidt05 сент. 2015 г., 22:50
Заслуживает больше голосов. Обнаружил, что некоторые странные gitignore в некоторых папках / vendor / вызывают проблемы с последней версией git.
 luanjunyi04 авг. 2015 г., 23:46
Это намного лучше, чем принятый ответ. Без обид, но это спасло мой день. Спасибо, Кенорб.
 Samuel19 нояб. 2015 г., 00:58
это спасло меня сегодня ... кажется, что Visual Studio создала файл с именем gitignore_global.txt в папке с документами пользователя, и это игнорировало файлы, которые я не мог (не) игнорировать
 vladkras13 дек. 2015 г., 13:03
только мерзавец> = 2.6

~/.gitignore а также~/.gitignore_global которые могут быть созданы некоторыми клиентами Git (например, Atlassian SourceTree в Mac OS X).

Ваш ответ на вопрос