.gitignore появляется, когда я запускаю git status - PullRequest
7 голосов
/ 21 октября 2011

Когда я запускаю git status, .gitignore отображается в списке неотслеживаемых файлов. Как я могу предотвратить его включение в список?

Содержимое .gitignore:

images/builder/

Ответы [ 4 ]

13 голосов
/ 21 октября 2011

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

5 голосов
/ 21 октября 2011

Чтобы пояснить, что говорили другие, есть три категории вещей, которые исключены, и git использует разные файлы исключений для каждой категории:

  1. Материал, с которым все работаютв проекте хотите исключить - например, *.o, имена сгенерированных исполняемых файлов, другие сгенерированные сборкой файлы, которые вы не хотите регистрировать.

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

  2. Материал, который вы лично хотитеисключить для всех ваших проектов, но другие, работающие над теми же проектами, не могут.Например, я использую редактор Emacs, который создает файлы резервных копий, такие как Foo.~1~, так что это то, что я исключаю лично для всех моих проверок git

    В этом случае вы используете «персональный» файл игнорирования, обычно вваш домашний каталог называется что-то вроде ~/.gitignore;имя этого файла фактически задается как глобальный параметр git, поэтому, например, вы можете сделать:

    git config --global core.excludesfile ~/.gitignore
    

    [Поскольку это глобальная настройка, вам нужно сделать это только один раз.]

    Итак, для моих файлов резервных копий Emacs я добавляю шаблон типа *~ в ~/.gitignore.

  3. Материал, который вы хотите исключить «локально» в определенном рабочем дереве,но, возможно, не для других рабочих деревьев.

    Для этого случая вам следует добавить исключающие записи в файл .git/info/exclude.Поскольку этот файл находится в каталоге magic .git, команда status никогда не покажет его как неотслеживаемый файл (и вы не можете его добавить).

Git использует все эти исключенияфайлы вместе, чтобы решить, что исключено.

2 голосов
/ 21 октября 2011

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

2 голосов
/ 21 октября 2011

Просто зафиксируйте файл.
Затем он уйдет из списка.
(Сначала я находил это странным.)
Вы по-прежнему сможете редактировать его, чтобы добавить больше элементов в будущем.
А затем совершите еще раз, чтобы игнорировать их

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...