Возможно ли использовать SVN для документов - PullRequest
4 голосов
/ 07 октября 2010

Нам нужно, чтобы документы распределялись между клиентами (CRM-подобная функциональность) Пользователи должны иметь возможность:

  • Отредактируйте документы и сохраните их снова
  • Прикрепить новые документы

Наше приложение написано в WPF с WCF для передачи данных и NHibernate / SQL для данных на сервере.

мы думаем о том, чтобы использовать SVN и заставить приложение создавать локальную проверку частей хранилища (когда они щелкают документ, он извлекается SVN в фоновом режиме и открывается из локального пути) - При сохранении он будет молча (с использованием мониторинга пути) возвращаться в хранилище.

Вопрос: Это возможно - или есть лучшие решения для этого?

РЕДАКТИРОВАТЬ 1: Резюме на данный момент:

  • Я рассмотрю использование Git / Mercurial вместо SVN
  • Размер документа (редакции) может быть запрещающим в ожидании тестов
  • SharePoint - это вариант (хотя в моем случае это невозможно, так как стоимость сама по себе непомерно высока) - я рассмотрю альтернативы для SharePoint, хотя.
  • Не так много опыта использования репозиториев для многих пользователей, хотя это работает для небольших команд.
  • Wiki может быть альтернативой SVN.

Спасибо за все отзывы - я буду держать их открытыми дольше.

РЕДАКТИРОВАТЬ 2: Резюме после нескольких дней работы - у меня работает клиент - посмотрите мой прогресс здесь .

Ответы [ 6 ]

3 голосов
/ 07 октября 2010

Вы также можете рассмотреть возможность использования Wiki для управления документами - я видел, как это сделано, и делаю это сам для своей организации. Мы используем Atlassian's Confluence Wiki. Слияние обеспечивает управление версиями и общее управление документами.

3 голосов
/ 07 октября 2010

Исходя из тяжелых ссылок .NET, все ли вы настроены с MSDN? Возможно, вы можете использовать SharePoint ... который уже может быть включен в вашу учетную запись MSDN.

2 голосов
/ 07 октября 2010

Как правило, я не думаю, что SVN или какая-либо система контроля версий - это хорошая вещь для обмена документами.Основным недостатком системы diff является бинарные файлы ... Ваш репозиторий SVN будет быстро расти.

Возможно, вам следует попробовать использовать некоторые коммерческие инструменты, предназначенные для обмена документами (например, Microsoft Sharepoint).Или некоторые альтернативы с открытым исходным кодом ... Возможно, вам следует прочитать этот пост ...

2 голосов
/ 07 октября 2010

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

Я бы сохранял документы в виде блобов в базе данных и получал / сохранял их через WCF.

1 голос
/ 07 октября 2010

Это зависит от типа документов, которые вы используете. Если у вас много изменяющихся сжатых двоичных файлов, не используйте их.

Однако, если документы имеют открытый формат , такой как язык Wiki, (X) HTML, LaTeX или несжатый ODF, то использование системы контроля версий имеет смысл. Кроме того, куча сжатых ODF-файлов или PDF-файлов обрабатывается очень хорошо, особенно если файлы в основном меньше 5 МБ или около того.

Кроме того, не забудьте проверить некоторые более поздние системы контроля версий, такие как Mercurial и Git , прежде чем придерживаться концептуально устаревшей SVN. В вашем сценарии вы не получите много пользы от «распределенной» части Mercurial и Git, но, тем не менее, их проще настроить - по крайней мере, по моему опыту. И они предоставляют очень продвинутые функции контроля версий, которые могут спасти ваш день в тех редких случаях, когда они вам нужны.

Если вы придерживаетесь SVN и если ваше клиентское программное обеспечение работает в современной системе Unix, вы также можете попробовать SVN-FS . Это файловая система, которая использует удаленный сервер SVN. Каждое чтение идет к последней редакции. Каждая запись создает новый коммит. Похоже, это именно то, что вы хотели построить вокруг SVN.

1 голос
/ 07 октября 2010

Я думаю, что использование готовых и проверенных технологий - отличная идея. Хотелось бы увидеть прогресс, если вы действительно пойдете по этому пути.

Я бы решительно выступил против SharePoint - вы привязываетесь к Microsoft способами, которые сложно описать здесь. С моей точки зрения, SharePoint - это технология, о которой нужно заботиться только о себе.

...