Какой у вас опыт работы с SVN в Windows?

Мне любопытно услышать опыт тех, кто в настоящее время использует свой сервер SVN в Windows.

У Джеффа Этвуда есть пост о том, как настроить SVN в качестве службы Windows . Это отличный первый шаг, но он не затрагивает другие темы, такие как:

  • Что использовать для браузера веб-хранилища? WebSVN может работать на Windows, но это не красиво.
  • Как управлять файлом passwd?
  • Можно ли интегрировать с Active Directory без запуска Apache?
  • Стратегии резервного копирования хранилища.
  • Полезные глобальные шаблоны игнорирования для разработки Visual Studio (предложения здесь , здесь и здесь, например).

Наша компания перешла с SourceGear Vault на Subversion около месяца назад. У нас есть базовые знания, но хотелось бы узнать советы и рекомендации людей по работе с SVN в мире MSFT.

23.08.2008 19:30:47
12 ОТВЕТОВ
РЕШЕНИЕ

Используйте VisualSVN Server . Он интегрируется с аутентификацией Windows и обрабатывает все настройки apache. Это так же безболезненно, как SVN может быть на Windows.

17
9.01.2010 23:32:42

В моем блоге http://tv.inner-rhythm.co.uk/ есть довольно подробные руководства по настройке SVN с Apache и Trac, которые мы используем в моей компании, которая работает для нас.

1
23.08.2008 19:32:45

VisualSVN это путь. Встроенная поддержка Active Directory очень проста в использовании.

2
23.08.2008 19:37:40

Я использую комбо VisualSVN и черепаха. Он плохо интегрируется с Visual Studio, но вы можете использовать другие плагины / приложения для этого.

1
23.08.2008 19:43:33

Я обнаружил, что VisualSVN примерно на 50% медленнее, чем запуск SVN как собственной службы. Я всегда предполагал

это было из-за доступа через http: // с Apache, который, кажется, должен был бы быть медленнее

чем доступ через svn: //, который является родным TCP / IP.

Эксперимент

За последние 30 минут вот что я сделал:

  • Установил VisualSVN на порт 8080, параллельно с моей существующей установкой SVN
  • Импортированы три существующих репозитория в VisualSVN
  • Выгнали всех остальных с сервера
  • Делал параллельные сравнения полной проверки SVN

Полученные результаты

Repo 1: 652 files, 273 directories, 60.1MB
  23 seconds for VisualSVN over http:// 
  16 seconds for SVN over svn://

Repo 2: 4623 files, 964 directories, 127.9MB
  2 minutes, 18 seconds for VisualSVN over http://
  1 minute, 30 seconds for SVN over svn://

Это на идентичном оборудовании с точно таким же хранилищем. Мне нравится, насколько прост VisualSVN, но интеграция с AD и GUI не стоят 50% снижения производительности.

Кто-нибудь еще видел эту разницу? Я делаю что-то не так, просто следуя параметрам установки по умолчанию?

2
23.08.2008 20:11:15
Ваш анализ ошибочен, потому что вы не сравниваете яблоки с яблоками. Возможно, вы захотите прочитать svnbook.red-bean.com/en/1.5/svn.serverconfig.choosing.html. Вы должны сравнить Apache HTTPd + mod_svn с VisualSVN для тех же функций.
Scott Markwell 9.01.2009 20:29:23
Э-э ... разве это не то, что я сказал? «Я всегда предполагал, что это из-за доступа через http: // через Apache, который кажется медленнее, чем доступ через svn: //, который является родным TCP / IP».
Portman 10.01.2009 01:39:52
Я уверен, что есть разница, но вы перезагрузили окно между тестами? В противном случае кэширование файлов, выполняемое ОС, повлияет на время второго запуска.
devstuff 28.03.2009 05:03:49
Тот факт, что subversion намного медленнее http: //, чем svn: //, является известной проблемой. Последнее, что я прочитал, было запланировано исправить в Subversion 1.7: blog.red-bean.com/sussman/?p=139
Wim Coenen 28.03.2009 12:22:06
Одна из причин того, что http: // медленнее, чем svn: //, заключается в том, что HTTP не имеет состояния, поэтому возникают дополнительные издержки. Протокол SVN с состоянием. Это обсуждалось в списках рассылки SVN несколько раз.
myron-semack 6.04.2009 02:06:30

Trac, безусловно, является лучшим веб-приложением для управления проектами, которое я использую, оно интегрируется с Subversion, так что вы можете видеть временные рамки коммитов и различий в каждой версии, оно позволяет создавать тикеты и отчеты об ошибках, и имеет встроенную вики.

http://trac.edgewall.org/wiki/TracOnWindows

Немного знаний Python, и его легко запустить и запустить (если у вас на Windows, хотя, используйте сервер tracd: http://trac.edgewall.org/wiki/TracStandalone (эта ссылка покажет вам, как установить его как служба Windows).

1
23.08.2008 20:50:30

Я думаю, что вы видите разницу между протоколом SVN и размещением протокола SVN на другом.
Аналогичная производительность снижается при использовании svn + ssh по сравнению с svn.

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

0
26.08.2008 03:34:43

Я рекомендую TortoiseSVN . Он добавляет возможности SVN в Windows Explorer. Кроме того, TortoiseSVN проверьте, поддерживает ли используемая вами среда IDE поддержку SVN.

1
29.08.2008 18:09:07
TortoiseSVN добавляет SVN в XP Windows Explorer. Проводник Vista не допускает такого рода настройки, что является одной из моих самых больших проблем в Vista.
David Thornley 20.01.2009 22:30:17
@David: TortoiseSVN работает над моими блоками Vista уже 2 года без каких-либо проблем.
devstuff 28.03.2009 05:01:24

Запуск SVN под Apache действительно не так уж и сложно. И вы можете использовать mod_auth_sspi для интеграции с активным каталогом.

0
29.08.2008 18:18:55

Rich Strahl только что опубликовал запись в блоге «Запуск сервера VisualSVN для управления исходным кодом Subversion». Стоит прочитать:

http://west-wind.com/weblog/posts/480534.aspx

1
17.09.2008 16:12:34

Для резервного копирования я написал комбинацию командного файла и VBScript, который запускается раз в неделю в качестве запланированной задачи. Это:

  • Сканирует определенную папку в файловой системе, рекурсивно ищет SVN-репозитории (у нас есть множество небольших репозиториев, поскольку мы обнаружили, что один uber-репозиторий быстро становится трудным в обслуживании и невыносимо медленным при использовании с TortoiseSVN);
  • Использует горячую копию svnadmin в каждом найденном хранилище для создания резервной копии;
  • 7zips все резервные копии в один архив;
  • Устанавливает общий ресурс в сети SAN и копирует архив;
  • Удаляет все временные файлы;
  • По электронной почте уведомление об успехе.
1
17.09.2008 16:21:18

Сервер VisualSVN + Trac + TortoiseSVN + Ankhsvn.

Выполнено. Гладкий как шелк. Какой Visual SourceSafe должен был быть.

1
21.03.2011 13:58:13