team.custis.ru
[email protected]
Одежка для Subversion: ViewVC и SVN-Searcher
Виталий Филиппов[email protected]
Заказные ИнформСистемы
team.custis.ru
[email protected]
Откуда ноги растут
Subversion (англ.) - свержение; ниспровержение; подрывная деятельность.
© CollabNet 1999+
team.custis.ru
[email protected]
История: CVS
CVS
SCCSRCS
«Свергнуть» и улучшить.
team.custis.ru
[email protected]
CVS CVSnt→
CVS попал в лапыMarch Hare Software.
Теперь в CVSnt и фичи, и баги, и реклама.
team.custis.ru
[email protected]
SVN — это «правильный*» CVS.* против статистики не попрёшь
team.custis.ru
[email protected]
* пр
отив
ст а
тис т
ики
не п
опр ё
шь
team.custis.ru
[email protected]
team.custis.ru
[email protected]
Модный тренд: Распределёнщина
Linus Torvalds:``Поэтому, например, я
Subversion даже трехметровым багром трогать не буду*''
* это аGitация такая
Git, Bazaar, Mercurial, SVK...
team.custis.ru
[email protected]
Но!Компании остаются на SVN.
(контроля хотят)
team.custis.ru
[email protected]
Итак, в SVN мы храним …что?
team.custis.ru
[email protected]
Обычно — только код... :-(Почему?
team.custis.ru
[email protected]
SVN - «Что-То Для Программистов»
team.custis.ru
[email protected]
team.custis.ru
[email protected]
● Только код● Вытащить, поправить и обратно● Иногда — смержиться... (но тяжело...)● …и с трудом поискать по истории
svn log | less
И поэтому!
team.custis.ru
[email protected]
Теряем мощность инструмента!
team.custis.ru
[email protected]
Ещё проблемы!
trunk/cis-log.uni.sln +20/-28trunk/LogTransmitter/Daemon.cs +1/-2...?
Новости
team.custis.ru
[email protected]
team.custis.ru
[email protected]
А возможностей — куча!
team.custis.ru
[email protected]
Причём
Без-возд-мезд-но!(GPL)
team.custis.ru
[email protected]
BugzillaBugzilla
CVSntCVSnt
team.custis.ru
[email protected]
Веб-интерфейс к SVN и CVS репозиториям.
Листинги История Поиск + RSS
team.custis.ru
[email protected]
+ гибкая поддержка авторизации и прав.(плагины)
team.custis.ru
[email protected]
Одн
а ко,
уж
е п о
пул я
рен!
team.custis.ru
[email protected]
<ДЕМО> авторизация (домен!)→ навигация→ история→ подсветка синтаксиса→ diff→ annotate→ поиск→ RSS→ патчи→
team.custis.ru
[email protected]
Теперь применение...
team.custis.ru
[email protected]
НЕТ:cvsnt -B XXX -m ... ci
(нестандартный атрибут, только CVSnt)
ДА:cvs или svn ci -m 'Bug XXX'
(текст, легко искать)
Привязка к багу (задаче)
team.custis.ru
[email protected]
(+ д
емо)
team.custis.ru
[email protected]
1. Связь с задачей == поиск «Bug XXX» в комментариях.
team.custis.ru
[email protected]
2. Слежение == RSS-подписка на поиск
team.custis.ru
[email protected]
3. Демонстрации == навигация, diff, annotate, подсветка
team.custis.ru
[email protected]
4. Патч по проблеме == патч из поиска по «Bug XXX»
team.custis.ru
[email protected]
Шкурки ViewVC(для тех, кому мало обычного шаблона)
team.custis.ru
[email protected]
Чего не хватает?… офисных форматов ...
И пр.
team.custis.ru
[email protected]
И поиска по содержимому.
team.custis.ru
[email protected]
Обычно так:● Файлопомойка● Права Windows● Некий поиск
\\master\projects\
OmniFindOmniFind
team.custis.ru
[email protected]
На самом-то деле не так плохо :)
team.custis.ru
[email protected]
«+» поиски от Яндекса и т. п. хороши «-» но ставить их должен каждый*
* права...
team.custis.ru
[email protected]
«+» стандартные средства «-» не база, а помойка знаний* «-» версии не отслеживаются
* ой! скопировал не туда и всё пропало!
team.custis.ru
[email protected]
SVNSearcher
team.custis.ru
[email protected]
SVNSearcher
Поиск — базовый
и расширенный
team.custis.ru
[email protected]
Это ж !
А это значит — косим под гугль...
● Инкрементальный индекс● Офисные форматы и PDF● Русскоязычная морфология● Язык запросов
team.custis.ru
[email protected]
http://lucene.apache.org/java/2_0_0/queryparsersyntax.html
● (FileBody:зарплата AND Name:документ) FileBody:проверка● "jakarta apache" -"Apache Lucene"● Испол*● И?полнитель● Исполнитель~ (нечёткий поиск)● "Исполнитель заказа"~10● DocName:[Ананасы TO Кони]● Date:[20070515 TO 20080414]
team.custis.ru
[email protected]
«-» Снова кушать кофеин...*
java -Xms128m -Xmx512m SVNIndexer-1.3.0.jar
* хотя некоторые любят :-)
team.custis.ru
[email protected]
team.custis.ru
[email protected]
Но совладать можно :)
team.custis.ru
[email protected]
<ДЕМО> авторизация (опять домен!)→ поиск по «SVNSearcher»→ «самозарождение греха» (UTF-8)→ ссылки ViewVC→ → расширенный поиск (FileBody: и т.п.)→ язык запросов→
team.custis.ru
[email protected]
Применение уже озвучено:
Документооборот и...
team.custis.ru
[email protected]
...SVN для «не-программистов»?
team.custis.ru
[email protected]
Можно попробоватьсмонтировать SVN по WebDAV
и настроить автокоммит.
team.custis.ru
[email protected]
Теоретически — стандартными средствами Windows.
Практически — WebDrive / NetDrive.
+ пляски с .
team.custis.ru
[email protected]
PROFIT!!!1
team.custis.ru
[email protected]
Finita!
Вопросы? → [email protected]