четверг, 22 октября 2009 г.

Игнорируя SVN ignore

SVN – SubversionИзначально так сложилось, что для контроля версий я использовал Tortoise SVN. Но после аврального переезда на новую систему пришлось подыскивать новый SVN клиент, поскольку работа с консоли меня никак не прельщала. Выбор пал на RapidSVN. Привыкший к удобству «Тортойза», я не ожидал подвоха... и первый же коммит (svn commit) подарил много радостей всей команде. В итоге я задался вопросом как заставить SVN игнорировать выбранные файлы?


Команды задания свойств SVN


Команда svn propset
svn propset свойство маска_файлов директория

Например, находясь в директории конфигурации проекта trunk/config:
svn propset svn:ignore development.* environments


Рекомендуется по возможности использовать другую команду svn propedit
svn propedit svn:ignore environments

В открывшемся редакторе свойств, можно задать несколько масок (каждая с новой строки):
development.*
test.rb


Для удаления свойств со всей директории используют команду svn propdel
svn propdel svn:ignore environments


Проделав необходимые манипуляции и жмакнув кнопку “Commit” с отвисшей челюстью проводил отправленный в базу «проигнорированный» development.rb

Йопт! В чем дело? Почему она игнорирует мое игнорирование?!! :)

Она игнорирует


Минут пять покурив SVN Book, я нашел причину. Оказывается, поддержка масок пропуска файлов действует только на unversioned файлы.


На данный момент остановился на варианте коммита отдельных директорий:
svn commit app public -m "fixes ticket #1234"


Демотиватор дня


На тему другой системы контроля версийGit


Git trunk – Демотиватор
Без перевода :)


Бонус для RSS подписчиковSVN wallpaper


SVN wallpaper
SVN обоина для рабочего стола (1600x1000)


1 Комментариев :

Croaker комментирует...

Мораль той басни (большими буквами): ДА, БЛЯ! — Я ВЕРНУЛСЯ К КОНСОЛИ!!!

Отправить комментарий

Жги!