Кто-нибудь имел успех с "Auto Exclude List" TortoiseHg? - PullRequest
12 голосов
/ 23 ноября 2010

У меня есть файл конфигурации, который я часто изменяю, чтобы провести некоторое тестирование.Приблизительно в 95% случаев, когда я изменяю этот файл, я не желаю совершать репо.Это неприятно - всегда быть начеку во время коммитов.

Я обнаружил эту якобы изящную функцию в TortoiseHg, которая называется «Auto Exclude List», которая должна принимать разделенный запятыми список файлов, которые вы хотите использовать по умолчанию.не проверено (коммиты, возвраты, полки).Это звучало как идеальный, не хакерский способ сделать мою жизнь проще.

Проблема в том, что я не могу заставить ее что-либо делать.Я использую имя файла (с / без пути), glob: имя файла, кавычки, заключительная запятая и т. Д. - все без удачи.Я нахожу мало информации об этой функции в Интернете (ничего такого, о чем пользовательский интерфейс TortoiseHg пока не сообщает).

К вашему сведению: TortoiseHg (версия 1.1) с Mercurial-1.6, Python-2.6.4, PyGTK-2.16.0, GTK-2.16.6

Какие-либо предложения или успех с этой функцией?

Ответы [ 2 ]

5 голосов
/ 24 ноября 2010

Это определенно та функция, которую вы хотите.Я боролся с решением файла шаблона для той же проблемы, что казалось вечностью в subversion, поэтому я был очень счастлив обнаружить функцию исключения в TortoiseHg.

Это определенно работает для меня.Одна важная вещь, чтобы понять, какой эффект это имеет.Если один из исключенных элементов изменяется, он все равно отображается в диалоге фиксации.Единственное отличие состоит в том, что, в отличие от других измененных файлов, он не будет автоматически отмечен галочкой рядом с ним в диалоговом окне.

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

Это также означает, что вы можете перейти к другимхранилища, не будучи "тем парнем".Тем не менее, вы все еще не можете извлекать и обновлять с незафиксированными изменениями в вашей рабочей копии, поэтому вы должны периодически фиксировать или возвращать эти файлы.

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

Спецификация имен файлов содержится в файле .hg\hgrcпод разделом [tortoisehg].(Обновление): спецификации файлов относятся к корню репо и представляют собой явные отдельные имена файлов, разделенные запятыми.Нельзя допускать суеты.

Шахта выглядит так:

[tortoisehg]
ciexclude = msi.sql,Service\AssemblyInfo.vb,SetupInitialize\AssemblyInfo.vb

Работает для меня как шарм.

0 голосов
/ 23 ноября 2010

Вы пытались использовать файл .hgignore в своем хранилище Mercurial?

Для этого создайте файл в корне вашего репозитория Mercurial с именем .hgignore и следуйте синтаксису, указанному в ссылке выше. Обратите внимание, что вам нужно будет hg add и hg commit этот файл в вашем хранилище, прежде чем он начнет игнорировать указанные вами файлы.

Например, если вы хотите исключить все файлы * .txt и * .o из рассмотрения для фиксации, примером файла .hgignore может быть:

syntax: glob
*.txt
*.o
...