SVN: Проигнорируйте некоторые каталоги рекурсивно

Я не хочу названного каталога build или dist войти в мой SVN, неважно, как глубоко в дереве это.

Действительно ли это возможно? В мерзавце я просто поместил

build
dist

в моем .gitignore в корне и это рекурсивно игнорирует. Как я делаю это с svn? Не говорите мне делать propset на каждом родительском dir...

102
задан ire_and_curses 10 January 2010 в 00:02
поделиться

4 ответа

svn propset принимает --recursive как опцию, так что вы можете сделать это, имея два недостатка:

  1. вы должны проверить весь репозиторий (или, по крайней мере, все каталоги в нем), и
  2. вы должны запомнить, чтобы установить svn: игнорировать свойство всякий раз, когда вы добавляете новую директорию
44
ответ дан 24 November 2019 в 04:30
поделиться

Чтобы игнорировать все такие файлы во всех репозиториях, вы можете добавить глобальные знаки в конфигурационный файл для каждого пользователя.

На Unix-подобных системах, эта область появляется в виде каталога с именем .subversion в доме пользователя каталог. На Win32 системах, Subversion создает папку с именем Подрывная деятельность, как правило, внутри Область применения Область данных пользователя каталог профилей

См. Опции конфигурации

К сожалению, для этого нет возможности сделать это для каждого хранилища. В основном, это для каждого пользователя, или для каждой директории, так что множественное svn:ignores, вероятно, является способом сделать это, как бы это ни раздражало.

5
ответ дан 24 November 2019 в 04:30
поделиться

Добавить в свой ~ / .subversion / config или / etc / subversion / config или / etc / subversion / config-файл:

[miscellany]
global-ignores = build dist
12
ответ дан 24 November 2019 в 04:30
поделиться

Оператор нулевого коалесцирования (??) может быть довольно мизерным. Это...

ISomeRef myRef = firstChoice ?? secondChoice ?? fallback;

Переводит в какую-то функциональность, эквивалентную:

ISomeRef myRef = firstChoice;
if(myRef == null) myRef = secondChoice;
if(myRef == null) myRef = fallback;

Я говорю функционально эквивалентную, потому что я еще не посмотрел в отражателе:)

-121--2878105-

Одна из альтернатив, предложенных различными комментариями в руководстве, заключается в использовании preg _ replace () с модификатором 'e' в составе regexp:

preg_replace("/pattern/e","strtoupper('\\1')",$subject);

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

preg_replace('/pattern/e',"your_function(\$array,\$foo,\$bar,\$etc)",$str);
-121--4435341-

Это невозможно сделать. В Subversion существует только два механизма игнорирования: svn: ignore (не является рекурсивным) и global - игнорирует (не является специфичным для репозитория).

41
ответ дан 24 November 2019 в 04:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: