2013-08-01 4 views
1

У меня есть несколько репозиториев, которые я использую для отслеживания сценариев для различных целей в нашей системе. Например, несколько сценариев - это sql-скрипты, которые полезны для подтягивания, изменения и выполнения. Очень часто эти скрипты будут содержать набор параметров рядом с вершиной, которые изменяются, чтобы посмотреть на определенный набор записей.Как я могу перехватить Mercurial, чтобы игнорировать различия в частях файла?

К сожалению, как только я использую этот файл, он всегда отображается как изменение статуса hg. Мне действительно хотелось бы указать Mercurial, что некоторые части файла не интересны для обнаружения изменений.

Я знаю (и часто использую) расширения MQ, записи и полки, но все они требуют, чтобы я делал что-то, чтобы игнорировать эти строки. Я бы предпочел просто игнорировать их.

Любые предложения?

ответ

0

Вы могливероятно использовать предварительно фиксацию и после фиксации крюка, чтобы сделать следующее:

  1. На предварительной фиксации, скопируйте файл из какого-то временного известным файл, а затем перезаписать его с нетронутой неизмененной версии
  2. Пусть коммита продолжить
  3. на пост-коммит, скопировать файл обратно из временного расположения

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

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

Тогда простое копирование доступной версии из шаблона при настройке новой рабочей папки (что я предполагаю, случается нечасто). На этом этапе вы можете даже автоматизировать, если вы запускаете скрипт автоматически, с шагом if not exists ... copy ....

Вы не можете, однако, попросить Mercurial автоматически игнорировать части файла для каждой фиксации.

0

С MQ, вы можете:

  • переместить все свои (местные) редактирует в MQ-патч
  • создать псевдоним, который "Исключить все патчи, прежде чем совершать и совершать" в одной команде

 Смежные вопросы

  • Нет связанных вопросов^_^