Я хочу настроить Git на глобальное игнорирование определенных файлов.
Я добавил .gitignore
файл в свой домашний каталог ( /Users/me/
) и добавил в него следующую строку:
*.tmproj
Но это не игнорирование файлов этого типа, есть идеи, что я делаю неправильно?
.git/info/exclude
в репозитории , поэтому это не обязательно должно входить в глобальный файл. Кроме того, по умолчанию используется автоматический глобальный файл gitignore$HOME/.config/git/ignore
.Ответы:
Вам необходимо
core.excludesfile
настроить файл глобальной конфигурации так, чтобы он указывал на этот файл глобального игнорирования.например
* nix или Windows git bash:
Windows cmd:
Windows PowerShell:
Для Windows это установить на место
C:\Users\{myusername}\.gitignore
. Вы можете проверить правильность значения конфигурации, выполнив:Результатом должен быть расширенный путь к вашему профилю пользователя
.gitignore
. Убедитесь, что значение не содержит нерасширенную%USERPROFILE%
строку.Важный : вышеупомянутые команды только установят местоположение файла игнорирования, который будет использоваться git. Файл все еще должен быть создан вручную в этом месте и заполнен списком игнорирования. (из комментария убийцы )
Вы можете прочитать о команде на https://help.github.com/articles/ignoring-files/#create-a-global-gitignore
источник
HEAD
или вашем индексе, не должно иметь никакого значения, отслеживался ли файл когда-то или нет. Это может быть полезно , если вы добавите выходgit status
,git config core.excludesfile
на ваш вопрос.#
в начале строки внутри,~/.gitignore
чтобы добавить комментарии в глобальный файл игнорирования?%USERPROFILE%
переменной. Мне пришлось ввести полный путь к файлу, используя разделители каталогов * nix. например, core.excludesfile C: /Users/User/.gitignoreПеред перенастройкой файла глобальных исключений вы можете проверить, на что он настроен в данный момент, используя следующую команду:
В моем случае, когда я запустил его, я увидел, что мой глобальный файл исключений был настроен на
и там уже было несколько вещей, перечисленных там. Таким образом, в случае данного вопроса, возможно, имеет смысл сначала проверить существующий исключающий файл и добавить к нему новую маску файла.источник
Хотя другие ответы верны, они устанавливают глобальное значение конфигурации, в то время как для глобального файла git ignore существует стандартное расположение git:
* Никс:
Окна:
Вам может понадобиться создать
git
каталог иignore
файл, но затем вы можете поместить глобальные игнорирования в этот файл, и все!Источник
...
источник
git
команд. Поскольку это файл настроек в каталоге каждого пользователя, я не думаю, что он когда-либо будет перезаписан.~/.config/git/ignore
.Чтобы создать глобальное gitignore с нуля:
C:/Users/User
.gitignore_global
расширениемисточник
От сюда .
Если вы создадите в своем репозитории файл с именем .gitignore, git будет использовать его правила при просмотре файлов для фиксации. Обратите внимание, что git не будет игнорировать файл, который уже отслеживался до того, как в этот файл было добавлено правило для его игнорирования. В таком случае файл должен быть отслежен, обычно с:
Это твой случай?
источник
core.excludesfile
файл, похоже, интерпретируется иначе, чем.gitignore
файл. Если вы хотите игнорировать весь каталог, просто введите имя каталога, как.vscode/
вместо.vscode/*
Если вы используете систему Unix, вы можете решить свою проблему двумя командами. Где первый инициализирует конфиги, а второй изменяет файл с файлом, который следует игнорировать.
источник
пример
Вуаля !!
источник
Помните, что запуск команды
просто настроит глобальный файл, но НЕ создаст его. Для Windows проверьте каталог Users на наличие
.gitconfig
файла и отредактируйте его по своему вкусу. В моем случае это так:источник
Я могу игнорировать
.tmproj
файл, включив один.tmproj
или*.tmproj
в мой/users/me/.gitignore-global
файл.Обратите внимание, что имя файла
.gitignore-global
не является.gitignore
. Это не сработало при включении.tmproj
или*.tmproj
в файле, названном.gitignore
в/users/me
каталоге.источник
core.excludesfile
конфигурации..tmproj
файл не получает игнорируется , может быть потому , что пользовательexcludesfile
не будут.gitignore
.Вы должны создать исключающий файл для этого. Проверьте эту суть, которая довольно очевидна.
Однако, чтобы ответить на ваш вопрос, вам может понадобиться либо проиндексировать
.tmproj
файл (если вы уже добавили его в индекс) с помощьюgit rm --cached path/to/.tmproj
, либоgit add
иcommit
ваш.gitignore
файл.источник
git rm --cached
?в подсистеме Windows для Linux я должен был перейти к корню подсистемы к тому
cd ~/
времениtouch .gitignore
и затем обновить глобальную конфигурацию gitignore в там.Надеюсь, это кому-нибудь поможет.
источник
Если вы используете VSCODE, вы можете получить это расширение, чтобы справиться с задачей для вас. Он следит за вашим рабочим пространством каждый раз, когда вы сохраняете свою работу, и помогает автоматически игнорировать файлы и папки, указанные в настройках vscode.json ignoreit (расширение vscode)
источник