2014-09-15 2 views
3

Я работаю с репозиторием Mercurial, в котором хранятся файлы .DS_STORE. Как я могу забыть эти файлы (из всех подкаталогов)? Я вижу много ответов для Git,, но не Mercurial. Я сразу же буду игнорировать эти файлы, поэтому, если есть какой-то способ сделать это, я бы хотел услышать об этом. Благодаря!Как я могу забыть все файлы .DS_STORE в репозитории Mercurial?

ответ

7

После добавления .DS_STORE записи в файл .hgignore, вы можете забыть все файлы, которые соответствуют вашим игнорируют файлы с

hg forget "set:hgignore()" 

Обратите внимание: Это удалят файлы, которые вы вот-вот забудут!

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

.hgignore самостоятельно не влияет на файлы, которые уже отслеживаются.

+0

> Это удалит файлы, которые вы собираетесь забыть! Уверены ли вы в этом? help говорит: «он не удаляет их из рабочего каталога». (hg 2.9.2) –

+1

@ChristopheMuller: Вы правы в том смысле, что файлы не будут удалены из рабочей копии, где вы выберете 'hg forget'. Они будут удалены из других рабочих копий, когда вы «hg update» передаете коммит, который их удалит. –

+0

@MartinGeisler да. На самом деле это желаемое поведение :). Спасибо за разъяснения. –

1

Использование .hgignore. Синтаксис аналогичен синтаксису .gitignore.

https://www.mercurial-scm.org/wiki/.hgignore

+4

К сожалению, обновление файлов '.hgignore' не будет _forget_ файлов из исходного элемента управления, поскольку они уже были добавлены в предыдущие коммиты. – William

+0

Да, извините. Я неправильно понял ваш вопрос. – lxg

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