Использование Subversion в качестве механизма управления версиями в приложении - PullRequest
7 голосов
/ 16 декабря 2009

Обычно svn используется либо непосредственно из командной строки, либо через клиент GUI, такой как Tortoise.

Есть ли примеры полноценных приложений, которые используют svn под капотом для реализации управления версиями?

Вместо того, чтобы использовать реляционную СУБД, я могу себе представить, что может быть в тех случаях, когда хранилище svn может использоваться в качестве файлового слоя поддержки версий. Есть ли фундаментальные причины, по которым это было бы плохой идеей?

Ответы [ 2 ]

3 голосов
/ 16 декабря 2009

Google Code использует Subversion для управления версиями вики-страниц проекта. Ваша вики отображается как папка в хранилище Subversion. Существует открытый код Google Code под названием Longhouse . Из описания проекта:

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

Лично я буду осторожен при попытке версии большого XML-файла. Я попробовал это с Freemind картами разума, и пару раз, когда мне приходилось сливаться, были кошмары. Я догадываюсь, что YAML подойдет лучше, хотя изменение уровня отступов может вызвать головную боль. Возможно, лучше всего избегать больших файлов с несколькими уровнями, когда вам нужно поставить файлы данных под контроль версий.

Обновление: Как прокомментировал Джош Келли, есть несколько других вики-движков, которые могут использовать систему контроля версий (RCS) для хранения данных. Согласно WikiMatrix , Twiki, PhpWiki, JSPWiki, Foswiki, MoniWiki и MidgardWiki входят в число 25 лучших, которые поддерживают эту функцию.

2 голосов
/ 16 декабря 2009

Я не знаю ни одного конкретного примера (пока не искал его ...), но есть полнофункциональная привязка .NET для SVN API, которая называется SharpSvn , если это помогает , (AFAIK он внутренне используется такими GUI-инструментами, как AnkhSvn.)

Я думаю, что есть и хорошие изменения, чтобы найти связанный пример кода.

НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...