Кажется, что .hgignore не работает - PullRequest
3 голосов
/ 23 ноября 2011

У меня есть файл .hgignore в корневом каталоге моего проекта, и он не выполняет приседания. Когда я делаю hg add, каждый отдельный файл в каталоге моего проекта добавляется и отслеживается. Я получаю тот же результат, использую ли я tortoisehg или командную строку. Командная строка - мое предпочтение. Что здесь происходит?

Мой .hgignore (взят из другого вопроса по SO):

# use glob syntax
syntax: glob

*.obj
*.pdb
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
*.lib
*.sbr
*.scc
[Bb]in
[Dd]ebug*/
obj/
[Rr]elease*/
_ReSharper*/
[Tt]humbs.db
[Tt]est[Rr]esult*
[Bb]uild[Ll]og.*
*.[Pp]ublish.xml
*.resharper

Ответы [ 3 ]

5 голосов
/ 23 ноября 2011

Видимо, возникла проблема с кодировкой файла. Я редактировал файл в Notepad ++ (пробовал кодировки ANSI и UTF-8), и при редактировании файл выглядел нормально. Я сдался и решил начать все заново с помощью команды notepad .hgignore. Затем я вставил содержимое файла, который доставлял мне неприятности, и все было в одной строке без разрывов. Я исправил разрывы, сохранил файл, и он сразу заработал.

Я до сих пор не уверен, почему файл отлично выглядел в Notepad ++, но фактически выводил мусор.

1 голос
/ 23 ноября 2011

Синтаксис совпадения glob учитывает путь. Вы можете переключиться на syntax: relglob для относительных путей или добавить префикс к вашим шаблонам **/.

0 голосов
/ 06 марта 2014

Возможно, вам потребуется указать mercurial, где находится глобальный файл игнорирования.Мне пришлось добавить эту строку в разделе [ui] моего .hgrc, чтобы он работал.

ignore = ~/.hgignore
...