Через поиск Я нашел, как Mercurial игнорирует определенные каталоги (и файлы/каталоги, которые они содержат) , которые находятся в корне каталога хранилища, но я не могу работать как продлить это до каталогов, которые находятся на нескольких уровнях в.Если Mercurial игнорирует все, кроме определенных подкаталогов
В этом случае, я хотел бы только управление версиями следующих каталогов:
app/design/frontend/rc
skin/frontend/rc
В результате, мой файл .hgignore выглядит следующим образом.
syntax=regexp
^(?!(app(/|$))|(skin(/|$)))
^app/code
^app/design/adminhtml
^app/design/frontend/base
^app/design/frontend/default
^app/design/install
^app/etc
^app/locale
^app/Mage.php
^app/.htaccess
^skin/adminhtml
^skin/frontend/base
^skin/frontend/default
^skin/install
Я уверен, что есть намного лучший способ сделать это, что не включает в себя выбирая другие каталоги внутри приложения и кожи, и, как я, возможно, захотите сделать это в течение нескольких проектов, которые я думал Я бы спросил здесь. Благодарю.
Nail имеет правильный ответ. Не мучайтесь с отрицательными утверждениями в синтаксисе regex, просто игнорируйте «. *», А затем вручную «hg add» файлы, которые вы хотите отслеживать. Добавить переопределяет '.hgignore', поэтому, как только вы их добавляете, вы как будто создали непрочитанное исключение в regexp. –
Раньше, когда я сбрасывал негативные утверждения, мне казалось, что я был так близок, но он просто не работал с вложенными каталогами. Если я смогу узнать, как это сделать, это позволит мне вручную добавить нужные каталоги/файлы каждый раз, когда будут добавлены новые файлы. –
, обновляя мой ответ, я заметил опечатку в вашем .hgignore. Это должен быть синтаксис: regexp', а не 'синтаксис = regexp'. –