У меня есть репозиторий git, который игнорирует файлы изображений, а также несколько других файлов, но в моем .gitignore
файле он игнорирует только config.php
файл. Есть ли где-то глобальный файл игнорирования, который я не могу найти? Мне нужно указать файлы, чтобы добавить их сейчас, и это дает мне такое предупреждение:
Следующие пути игнорируются одним из ваших файлов .gitignore.
Содержимое моего ~/.gitconfig
файла - это только мой адрес электронной почты.
Ответы:
git check-ignore
Используйте
git check-ignore
команду для отладки файла gitignore (исключите файлы).Например:
Приведенные выше выходные данные о совпадающем шаблоне (если есть) для каждого заданного имени пути (включая строку).
Так что, возможно, игнорируется не расширение вашего файла, а весь каталог.
Возвращаемый формат:
Или используйте следующую команду, чтобы распечатать домашнюю домашнюю страницу
.gitignore
пользователя и папку репозитория:В качестве альтернативы используйте,
git add -f
который позволяет добавлять файлы, игнорируемые в противном случае.См .:
man gitignore
,man git-check-ignore
для более подробной информации.Синтаксис
источник
Было бы неплохо знать, что ваша конфигурация git может содержать файл core.excludesfile, который представляет собой путь к файлу с дополнительными шаблонами, которые игнорируются. Вы можете узнать, есть ли у вас такая конфигурация, запустив (в проблемном репозитории git):
Если он печатает путь к файлу, просмотрите содержимое этого файла для получения дополнительной информации.
В моем случае я установил git через старую версию boxen, которая игнорировала шаблон «Значок?» который в моем случае дал мне предупреждение, упомянутое в этом вопросе, для значков папок (я использую файловую систему без учета регистра, поэтому Icon? соответствует значкам).
источник
Icon?
игнорировали.Проверьте это:
Вы искали другие файлы .gitignore, так как их может быть много.
Также посмотрите REPO / .git / config, чтобы узнать, есть ли там что-нибудь.
Repo exclude Локальные правила для каждого репо можно добавить в файл .git / info / exclude в вашем репо. Эти правила не связаны с репо, поэтому они не передаются другим. Этот метод можно использовать для локально сгенерированных файлов, которые вы не ожидаете от других пользователей, например файлов, созданных вашим редактором.
источник
У меня была такая же проблема - каталог игнорировался git с этой ошибкой:
Я наконец понял, что моя проблема была в строке в моем
~/.gitignore_global
:который соответствовал пути
app/views/admin/tags
. Я исправил это, добавив ведущую косую черту в глобальный файл gitignoreи git снова начал отслеживать мой каталог.
источник
help
каталог, который игнорировался. К счастью, я довольно быстро нашел ваш ответ.Для меня у меня случайно был подстановочный знак в моем файле ~ / .gitignore_global. Может там проверить?
источник
Еще одна вещь, которую стоит попробовать: у меня был каталог B с собственным
.git
репозиторием, вложенным в каталог моего проекта A (но не как подмодуль). Я внес некоторые изменения в B и хотел сделать из него полноценный подмодуль. Я считаю, что git A автоматически игнорировал B, потому что он содержал свой собственный репозиторий (см. Вложенные репозитории git без подмодулей? ). Я переименовал папку B и попытался клонировать ее снова как подмодуль, и это принесло мне вводящее в заблуждение сообщение об ошибке «ignored by .gitignore». Решением было удалить.git
из B.источник
У меня была такая же проблема, как и у вас. В единственном ответе вы указали несколько мест для проверки, но ни одно из них не решило проблему для меня, и, судя по вашему комментарию, я тоже не думаю, что за вас. У меня не было ДРУГИХ файлов .gitignore, скрывающихся ниже в дереве каталогов; ничего в .git / config; ничего в .git / ingore / exclude
Если проблема не исчезла, проверьте этот ответ . Это решило проблему для меня
По сути, проверьте файл ~ / .gitignore. Мой назывался ~ / .gitignore_global. Я не знаю, когда он был создан ( я, конечно, не сделал этого), но я попробовал множество различных настроек git при первой установке, поэтому один из них, должно быть, поместил его туда.
Надеюсь, его ответ тоже поможет вам!
источник
Другой причиной получения этого сообщения об ошибке от git является выполнение
git submodule add
команды, когда предыдущая команда git вылетела из строя и покинула файл блокировки (это может произойти, например, когда вы используете пользовательские сценарии, которые включают команды git, и вы не заметили аварии).Если
git commit
вместо этого вы выполните команду , хотя ни одно из условий не изменилось (git submodule add
будет продолжать кричать, что.gitignore
виноваты ваши файлы), вместо этого вы увидите другой отчет об ошибке:и действительно удаление файла блокировки:
решает проблему. (Это происходит с git версии 2.1.0.9736. Это может быть исправлено в будущих выпусках git.)
источник
Убедитесь, что у вас есть разрешение на доступ к папке. Я только что столкнулся с этим, и это произошло потому, что папка принадлежала пользователю www-data, а не пользователю, под которым я вошел в терминал.
источник
В моем случае проблема была вызвана косой чертой на моем пути ...
Не работает
работай
источник
Еще одна вещь: если каталог, в котором вы находитесь, требует root-доступа для записи или выполнения, убедитесь, что вы используете root-пользователь. На самом деле у меня возникла странная ошибка, когда я пытался добавить подмодуль, а git продолжал жаловаться, что путь, по которому я клонировал, игнорируется файлом игнорирования git. Затем я перешел на пользователя root, снова запустил добавление подмодуля, и проблем не было.
источник
Также проверьте,
~/.gitignore
и~/.gitignore_global
которые могут быть созданы некоторыми клиентами Git (например, Atlassian SourceTree в Mac OS X).источник
Убедитесь, что
.gitignore
файл не игнорирует сам себя. Распространенной ошибкой является добавление*
к.gitignore
файлу правила игнорировать каждый файл в текущей папке. Чтобы решить эту проблему, добавьте исключение.gitignore
:Таким образом, все файлы в каталоге будут проигнорированы, кроме
.gitignore
.источник