У меня есть хранилище с файлом Hello.java
. Когда я его компилирую, создается дополнительный Hello.class
файл.
Я создал запись для Hello.class
в .gitignore
файле. Тем не менее, файл по-прежнему отслеживается.
Как я могу заставить Git игнорировать Hello.class
?
Ответы:
Проблема в том, что
.gitignore
игнорируются только файлы, которые не отслеживались ранее (пользователемgit add
). Запустите,git reset name_of_file
чтобы удалить файл и сохранить его. Если вы хотите также удалить данный файл из хранилища (после нажатия), используйтеgit rm --cached name_of_file
.источник
git rm --cached name_of_file
удалит файл из вашего git-репо. Даже если вы добавите его в свой файл .gitignore. Это не игнорирование того, что удаляет.git reset name_of_file
удаляет отслеживание и не удаляет файл.Как игнорировать новые файлы
глобально
Добавьте путь (и) к вашему файлу (файлам), который вы хотели бы игнорировать к своему
.gitignore
файлу (и зафиксируйте их). Эти записи файла будут также применяться к другим, проверяющим хранилище.в местном масштабе
Добавьте пути к вашим файлам, которые вы хотели бы игнорировать в своем
.git/info/exclude
файле. Эти записи файла будут применяться только к вашей локальной рабочей копии.Как игнорировать измененные файлы (временно)
Чтобы игнорировать измененные файлы, чтобы они отображались как измененные, вы можете использовать следующую команду git:
Чтобы вернуть это невежество, используйте следующую команду:
источник
local
git ignore, и перезапустил мою систему, она по-прежнему показывает работу напрямую в чистоте.update-index
трюк, абсолютно идеальный, чтобы избежать изменения.gitignore
файла, который затем отслеживается Git!Добавьте следующую строку в .gitignore:
Это исключит Hello.class из git. Если вы уже зафиксировали его, выполните следующую команду:
Если вы хотите исключить все файлы классов из git, добавьте следующую строку в .gitignore:
источник
Hello.class
к.gitignore
будет игнорировать любой файл, вызванныйHello.class
в любом подкаталоге. Если вы намереваетесь игнорировать файл толькоHello.class
в том же каталоге, что и.gitignore
файл, используйте/Hello.class
вместо него строку..gitignore
файл?.gitignore
любом месте git-проекта - если путь начинается с/
, он будет относительно местоположения.gitignore
файла; в противном случае он будет ссылаться рекурсивно на файлы в текущем каталоге и его дочерних каталогах.1) Создать
.gitignore
файл. Для этого просто создайте.txt
файл и измените расширение следующим образом:Затем вы должны изменить имя, написав следующую строку в окне cmd:
Где
git.txt
имя файла, который вы только что создали.Затем вы можете открыть файл и записать все файлы, которые вы не хотите добавлять в хранилище. Например, мой выглядит так:
Если у вас есть это, вам нужно добавить его в свой Git-репозиторий. Вы должны сохранить файл, в котором находится ваш репозиторий.
Затем в Git Bash вы должны написать следующую строку:
Если хранилище уже существует, вы должны сделать следующее:
git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
Если шаг 2 не работает, вы должны написать весь маршрут файлов, которые вы хотели бы добавить.
источник
Игнорировать:
Чтобы отменить игнорировать:
источник
lstat(2)
затрат, он оставляет за собой право сообщить, что путь был изменен (…git commit -a
свободен совершать это изменение). 'Вы можете использовать методы ниже, чтобы игнорировать / не игнорировать изменения в отслеживаемых файлах.
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
источник
lstat(2)
затрат, он оставляет за собой право сообщить, что путь был изменен (…git commit -a
свободен совершать это изменение). 'Создайте
.gitignore
в каталоге, где находится .git. Вы можете перечислить файлы в нем, разделенные новой строкой. Вы также можете использовать подстановочные знаки:источник
.gitignore
файлах (если этот инструмент не предусмотрен проектом). Вы можете поместить шаблоны для ваших любимых инструментов в файл исключений для каждого пользователя (наборcore.excludesFile
); они будут работать во всех ваших репозиториях. Напримерgit config --global core.excludesFile "$HOME/.git-user-excludes"
, затем поместите их в этот файл.С официального сайта GitHub:
Если у вас уже есть зарегистрированный файл, и вы хотите его игнорировать, Git не будет игнорировать файл, если вы добавите правило позже. В этих случаях вы должны сначала распаковать файл, выполнив следующую команду в вашем терминале:
или
источник
Вы должны написать что-то вроде
в ваш
.gitignore
файл.источник
*.class
в свой файл,.gitignore
чтобы git игнорировал все файлы, заканчивающиеся на.class
.Добавьте, какие файлы вы хотите игнорировать в файл
.gitignore
:*.учебный класс
* .projects
* .prefs
* .project
источник
Создавая файл .gitignore. Подробности смотрите здесь: Git Book - Игнорирование файлов
Также проверьте это: как заставить Git игнорировать файлы без использования .gitignore?
источник
Если вы уже зафиксировали файл и пытаетесь игнорировать его, добавляя в
.gitignore
файл, Git не будет игнорировать его. Для этого сначала нужно сделать следующее:Если вы только начинаете проект и хотите добавить некоторые файлы в Git ignore, выполните следующие шаги, чтобы создать файл Git ignore:
.gitignore
файл.источник
Вы также можете использовать .gitattributes (вместо .gitignore) для исключения целых типов файлов. Файл довольно понятен, но я вставляю содержимое здесь для справки. Обратите внимание на последнюю строку (двоичный файл * .class):
источник
Добавьте следующую строку в .git / info / exclude:
Hello.class
источник
.git
?У меня была похожая проблема с файлом "dump.rdb".
Я пытался добавить этот файл различными способами в файл .gitignore, но сработал только один способ.
ПРИМЕЧАНИЕ. Добавление файла в другом месте не работает.
Например, см .: https://gitlab.com/gitlab-org/gitlab-ce/raw/b3ad3f202478dd88a3cfe4461703bc3df1019f90/.gitignore
источник
Эта веб-страница может быть полезной и экономящей время при работе с
.gitignore
.Он автоматически генерирует файлы .gitignore для различных IDE и операционных систем с конкретными файлами / папками, которые вы обычно не хотите извлекать в свой репозиторий Git (например, специфичные для IDE папки и файлы конфигурации).
источник
Я попробовал это -
git status .idea/xyz.xml .idea/pqr.iml Output .DS_Store
echo " .idea/xyz.xml .idea/pqr.iml Output .DS_Store" >> .gitignore
git status .gitignore
аналогично мы можем добавить каталог и все его подкаталоги / файлы, которые мы хотим игнорировать в состоянии git, используя
directoryname/*
эту команду, и я выполнил эту команду изsrc
каталога.источник
git rm -r --cached .
git add .
источник
Я пробовал
--assume-unchanged
и тоже,.gitignore
но ни один не работал хорошо. Они затрудняют переключение веток и затрудняют объединение изменений от других. Это мое решение:Когда я фиксирую , я вручную удаляю файлы из списка изменений
Прежде чем вытащить , я прячу измененные файлы. И после тяги я делаю трещотку .
Шаг 3 иногда вызывает слияние и может привести к конфликту, который вам нужно разрешить, что является хорошей вещью.
Это позволяет мне сохранять локальные изменения, которые не доступны другим в команде.
источник