У меня есть несколько нетехнических пользователей, которые все используют набор файлов проекта. Было бы идеально, если бы они использовали контроль версий, но я думаю, что и subversion, и git слишком сложны для нетехнического персонала офиса.
Есть ли какое-нибудь программное обеспечение с распределенным исходным кодом, которое подойдет нормальным людям?
Вы пробовали версию Adobe cue? Это не с открытым исходным кодом / бесплатно, но может быть проще для конечного пользователя.
Вы пробовали Черепаха SVN? Я не могу представить, что управление версиями станет намного проще в использовании.
Что ж, OP запрашивает распределенный VC, а затем предполагает, что они выбрали Subversion не потому, что это было сложно, а не потому, что это не соответствовало их требованиям. Таким образом, может показаться, что «легкая» подрывная деятельность устранит единственное беспокойство ОП. -Адам
Если Subversion с TortiseSVN слишком сложна - а это может быть, поскольку управление версиями - это целая парадигма, отличная от Open, Modify, Save - тогда вы можете начать их с гораздо более простого ручного управления версиями:
myDocument-20080908-beverlyd.doc
Это просто, легко понять, и вы можете написать сценарий, который каждую ночь или неделю архивирует все старые версии, чтобы они действительно видели только последнюю или две версии.
Если кто-то хочет увидеть различия, научите его различать.
-Адам
Если система управления версиями слишком техническая, они могут использовать Subversion с WebDav.
Менее техничные люди будут просто сохранять файлы в обычном режиме из любого приложения, которое они используют, не беспокоясь / не думая об управлении версиями. Они получают возможность автоматического управления версиями, ничего не делая.
Когда им понадобится больше функций, они могут научиться использовать TortoiseSVN для просмотра различий, вернуться к старой версии, которая была создана для них автоматически, и т. д.
Из книги о подрывной деятельности:
Because so many operating systems already have integrated WebDAV clients, the use case for this feature borders on fantastical: imagine an office of ordinary users running Microsoft Windows or Mac OS. Each user “mounts” the Subversion repository, which appears to be an ordinary network folder. They use the shared folder as they always do: open files, edit them, save them. Meanwhile, the server is automatically versioning everything. Any administrator (or knowledgeable user) can still use a Subversion client to search history and retrieve older versions of data.
Я думаю, что лучшим решением было бы заставить всех напрямую использовать систему контроля версий. Если вы работаете на платформе Windows, я бы порекомендовал TortoiseSVN.
Если использовать TortoiseSVN напрямую слишком сложно, у меня есть хороший опыт настройки общего файлового ресурса Samba, в котором хранятся все документы проекта, и автоматической синхронизации этого с Subversion. Вы теряете выгоду от того, что люди пишут комментарии к своим коммитам, но во многих случаях автоматическая история версий лучше, чем отсутствие истории версий. Таким образом, вовлеченные люди даже не должны знать об отслеживании версий, если они сохраняют свои документы в нужном месте. Частота синхронизации зависит от того, как часто меняются документы, но в моем случае синхронизация каждые 24 часа была достаточной.
Примечание. Чтобы реализовать это, мне пришлось написать собственный сценарий, который извлекал последнюю версию из репозитория, сравнивал ее с локальной копией и выдавал команды svn
(или cvs
) для добавления, удаления и обновления любых измененных файлов. Я не уверен, существует ли общее (с открытым исходным кодом) решение для этого, но я не думаю, что это должно быть слишком сложно реализовать самостоятельно (я написал простой скрипт, чтобы сделать это за несколько часов).
Это больше похоже на вариант использования инструмента для совместной работы, такого как Базовый лагерь, SpiceBird или SharePoint, чем на «систему управления версиями». Эти инструменты имеют ту же цель, что и система управления версиями, но больше ориентированы на материалы типа Word Document и соответствующих пользователей. Это еще один элемент, который ИТ-специалисты должны поддерживать на сервере, но он также исключает возможность того, что чей-то помощник уничтожит ваш код.
Если у вас есть сервер Windows с сервером 2003 или выше, SharePoint (службы? Я не могу вспомнить) - хорошее бесплатное решение. Он обеспечивает простое управление версиями и базовый рабочий процесс.
Похоже, службы SharePoint Services можно загрузить бесплатно, хотя и не уверен в ограничениях. technet.microsoft.com/en-us/library/bb400746.aspx
«Файлы проекта» потенциально расплывчаты - если рассматриваемые файлы не являются в основном файлами ASCII и являются документами Word или чем-то еще, я не уверен, что традиционные инструменты управления версиями действительно будут работать.
SVN et. al. с радостью будет поддерживать двоичные файлы, но если это все, для чего вы его используете, то вы действительно не получаете большинства полезных функций и, как правило, вводите в заблуждение нетехнических пользователей. SVN (и git и т. д.) - это инструменты, разработанные для программистов - если вы просто ищете хороший способ управлять версиями документов и вести историю, я предполагаю, что для вашей конкретной платформы есть инструменты получше (хотя я не я знаю достаточно, чтобы порекомендовать конкретный).
Тем не менее, если это в основном файлы ASCII, я подозреваю, что TortoiseSVN - ваш лучший выбор.
В настоящее время я изучаю степень, в которой SharePoint может обеспечить нетехнический дружественный, но надежный контроль версий в аналогичном контексте. Предварительный результат - «Мех». Даже в том случае, если мы приходим к выводу, уже становится ясно, что контроль версий требует довольно серьезного изменения отношения пользователей к управлению документами.
Теперь, если бы это было для команд, использующих Apple Mac, а я полагаю, что это не так, я бы настоятельно рекомендовал Версии, который является чрезвычайно интуитивно понятным клиентом SVN. Это первое и единственное программное обеспечение, в котором я видел, как контроль версий и изменения его парадигмы легко принимаются непрограммистами.
Если им нужно редактировать файлы Office только по одному пользователю нечасто, поместите файлы в общий сетевой ресурс с соответствующими разрешениями и создавайте их резервные копии каждую ночь. Active Directory предупредит их, если кто-то уже открыл его.
Если это сложнее, чем просто офис, рассмотрите Sharepoint. Я думаю, что SVN слишком сложен, особенно из-за конфликтов и сравнений двоичных файлов, например. старые словесные документы на самом деле не работают.
Я бы попробовал Mercurial с ЧерепахаHG для интеграции с проводником.
Его достаточно просто использовать, чтобы я мог без проблем:
И поскольку он полностью распределен, они не могут сломать ваш репозиторий, когда они сломают свой - вы можете просто решить не извлекать их изменения или извлекать только хорошие изменения (например, избегая этих огромных двоичных файлов, новички обычно ставят под контроль версий. ).
С тех пор я переключился на управление всеми моими статическими веб-сайтами через Mercurial (и ловушку push-upload, которая автоматически загружает веб-сайт на мой FTP-сервер, поэтому мне больше не нужно об этом беспокоиться).
Я сделал инструкции для ответа subversion + webdav:
Маршалла - одним из требований был распределенный контроль версий. Поддерживает ли Tortoise одну из основанных на SVN DVCSeS?