2010-09-07 3 views
1

у меня есть это в proj/.hgignore:Для Mercurial (Hg), почему файл .hgignore нельзя игнорировать?

syntax: glob 
log/* 
*~ 
*.orig 
dump/* 
*.hgignore 
.hgignore 
tmp/* 

, но по какой-то причине, когда я делаю hg st или hg com файл .hgignore еще отображает до быть изменен или может быть совершено. Таким образом, нельзя игнорировать .hgignore? В моей папке могут быть подробности, которые моя команда не хотела игнорировать, но я это делаю. Поэтому я не хочу фиксировать этот файл.

+3

Файл .hgignore можно игнорировать, однако любой файл, который уже зафиксирован, нельзя игнорировать. Чтобы заставить его работать, вам действительно нужно удалить файл .hgignore из репозитория. Следуйте за ответом Пола Макмиллана, это звучит так, как вы хотите. –

ответ

2

Я думаю, что вы ищете это:

https://www.mercurial-scm.org/wiki/TipsAndTricks#Ignore_files_in_local_working_copy_only

.hgignore Общий файл нужно игнорировать все, и поэтому вы не можете исключить его.

+0

Это необходимо, только если вы хотите отслеживать .hgignore и не отслеживать. Если все, что он хочет, это не проверенный, он просто не должен его совершать. –

5

У Криса есть это в комментарии: вы, вероятно, уже добавили свой файл .hgignore, а add переопределяет .hgignore. Вам нужно hg forget .hgignore и hg commit, а затем вы обнаружите, что ваш файл игнорируется.

Это говорит о том,

+0

спасибо. так что мне нужно удалить .hgignore из проекта, чтобы его игнорировать? поэтому, если это так, нет действительно удобного способа иметь собственное добавление имен файлов в .hgignore после его фиксации, и хорошо, если бы у других людей был базовый набор имен файлов ... как насчет .hgignore.local, чтобы мы могли иметь собственные дополнения? –

+0

Ссылка в моем ответе функционально эквивалентна тому, что вы запрашиваете. –

+0

Вы правы, но это необходимо, только если вы хотите, чтобы оба материала были проигнорированы для всех, и все это игнорировалось только для вас. Если вам нужны только те вещи, которые игнорируются для вас, вы можете поместить их в .hgignore и никогда не добавлять/не комментировать, и он все равно вступает в силу. Ваше заявление «Общий файл .hgignore необходим, чтобы игнорировать что-либо, и поэтому вы не можете его исключить». неточно - он отлично работает, чтобы поставить .hgignore и другие вещи в .hgignore и никогда не делать этого. –