Поскольку файл .gitignore
хранится в репозитории, он имеет версию любого другого файла. Таким образом, он может отличаться по ветви, поэтому вы можете внести любые изменения в свою локальную копию, которая вам нравится, и передать ее вашим местным филиалам.
Содержимого файла .gitignore
не влияют на получение содержимого хранилищу, имеющие локальные изменения не изменят результаты, которые вы получаете когда вы тянете из проектов общественной репо. Но вам может понадобиться вручную разрешить конфликты в этом файле при изменении версии из общего репозитория .
В качестве альтернативы вы можете просто оставить файл .gitignore
и использовать git add -f
, чтобы добавить файлы, которые вы хотите отслеживать локально. После того, как файл добавлен в репозиторий git, его игнорирование не будет иметь никакого эффекта. Но если вы регулярно добавляете файлы в проигнорированный каталог, вероятно, это хорошая идея, чтобы изменить файл .gitignore
, чтобы git мог напомнить вам, что есть файлов, которые необходимо добавить.
Если вы собираетесь делать другие изменения, которые вы хотели бы отправить вверх по течению к общественному проекту, те должны быть сделаны на ветку без ваших локальных изменений в файл .gitignore
и добавления тех, в противном случае игнорируемых файлы. Затем вы можете объединить эти изменения в свою локальную ветвь с игнорируемыми файлами для вашего обычного использования.
Интересно. Поэтому я создаю и переключаюсь на ветку, а затем удаляю каталог, который я хочу отслеживать из .gitignore. Затем я могу отследить его и нажать на свое личное репо. Затем вернитесь к ветке проекта, когда мне нужно вытащить обновления проекта в основное приложение? – gtcaz
Если это единственные изменения, которые вы планируете сделать, вам не нужно будет переключать ветку. Вы уже находитесь в частной ветке по характеру git как распределенной системе, и вытаскивание изменений из восходящего репозитория - это именно то, что нужно сделать git pull. – qqx
Блестящий. Я вытащил из оригинала оригинала, и этот объединенный проект восходящего потока вступает в мою локальную ветвь dev. (Основные файлы разработки и локального развития находятся в разных каталогах, поэтому конфликт не должен быть.) Затем я нажал эту ветвь на свое частное репо, которое теперь содержит все. Звучит правильно? – gtcaz