По мере того, как моя компания начинает изучать возможность перехода от централизованных средств контроля версий (CVS, SVN, Perforce и ряда других) к предлагаемым командам распределенным инструментам управления версиями (в нашем случае меркуриальным), я столкнулся с проблемой:
Проблема
Менеджер поднял озабоченность тем, что распределенное управление версиями может быть не столь безопасным, как наши параметры CVCS, потому что история репо хранится локально на машине разработчика.
Трудно было уловить его точный вопрос безопасности, но я понял, что он сосредоточен на том, что злонамеренный сотрудник может украсть не только последнюю интеллектуальную информацию, но всю нашу историю изменений, просто скопировав одну папку.
Вопрос (ы)
- Разве распределенная система управления версиями действительно представляет новые проблемы безопасности для проектов?
- Легче ли злонамеренно красть код?
- Означает ли полная история дополнительную угрозу, которой не обладает последняя версия кода?
Мои мысли
Я считаю, что это может быть ошибочной мыслью о том, что централизованная модель более безопасна, потому что история кажется более безопасной, поскольку она отключена на своей собственной коробке. Учитывая, что пользователи с четным доступом к доступу к централизованному репо могут выборочно извлекать снимки проекта при любой ключевой ревизии, я не уверен, что модель DVCS делает все это проще. Кроме того, большинство инструментов CVCS позволяют извлекать всю историю репо с помощью одной команды, чтобы вы могли импортировать их в другие инструменты.
Я думаю, что другая проблема заключается в том, насколько важно сравнить историю с последней версией. Предоставленный кто-то мог бы проверить в секретном файле, а затем удалить его, и история довольно быстро станет значительной. Но даже в этом случае пользователь CVCS мог проверить эту сверхсекретную версию с помощью одной команды.
Я уверен, что я мог бы упустить что-то или преуменьшить риски, поскольку я очень хочу, чтобы DVCS стал полностью поддерживаемым инструментом. Пожалуйста, внесите какие-либо идеи по проблемам безопасности.