Веб-приложение представляет собой пользовательскую CMS, которая имеет несколько подпрограмм, и каждое из них имеет код и контент, находящиеся в одной структуре каталогов. Из-за архитектуры платформы приложения код и контент взаимосвязаны (контент зависит от кода для его отображения и других функций) и, следовательно, неразделимы. Содержимое хранится не как BLOB, а как файлы, и для их связи используется базовая БД. Размер вложенных приложений варьируется от 20 до 250 ГБ и более (это убийца).
Веб-приложение пойдет на некоторые улучшения в коде (новые подпрограммы, исправления ошибок и т. Д.), И в то же время пользователи будут добавлять / обновлять содержимое через уже работающую систему. Следовательно, требуется процесс развертывания / выпуска и, что наиболее важно, должна быть предложена система контроля версий как для кода, так и для контента.
Git приходит к картине по причинам - он с открытым исходным кодом и свободен, простота ветвления и слияния, он не централизован и, следовательно, не имеет единой точки отказа.
НО после некоторого первоначального исследования в сети я обнаружил некоторые неутешительные факты, которые применимы к нашему приложению - использование Git для больших систем, таких как наша, является болезненным (извлечение, клонирование, объединение, push, pull), а команды сложными ( "geeky" было бы более уместно) для разработчиков, которые не знают DVCS и в основном для пользователей Windows.
Для Git не существует фиксированного мышления, но если мне нужно перейти к централизованному подходу (в самом деле ХОРОШЕМУ случае), то каким должен быть путь (кроме CVS и SVN). Я читал, что Perforce является стабильной и также используется в Google (я ожидаю, что некоторые ошибки здесь !!).
Пожалуйста, поделитесь, направьте и прокомментируйте свои взгляды. Я действительно нуждаюсь в них.