Использование mercurial's mq для управления локальными изменениями


1

У меня есть локальный ртутный репозиторий с некоторыми изменениями, связанными с конкретным сайтом. То, что я хотел бы сделать, - установить пару файлов, чтобы быть неприемлемыми, чтобы они не были автоматически зафиксированы, когда я делаю hg commit без аргументов.

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

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

1

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

  0

Спасибо! Это именно то, что мне нужно. Вот ссылка на расширение: http://www.selenic.com/mercurial/wiki/index.cgi/ShelveExtension 24 сен. 082008-09-24 02:36:31


2

Я бы поместил эти файлы в .hgignore и зафиксировал «образец» этих файлов, чтобы их можно было легко воссоздать для нового сайта, когда кто-то проверяет ваш код.

  0

Я думаю, что это сработало бы только в том случае, если бы я контролировал восходящий репозиторий. Тем не менее, добавление их в .hgignore в любом случае может по-прежнему работать ... Однако это все еще не идеально. Может быть, ответ заключается только в том, чтобы иметь скрипты, которые исправляют и распаковывают файлы, о которых идет речь. 23 сен. 082008-09-23 23:01:36


0

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