Имеем прогу, для внутреннего использования, которая «релизится» каждые 1-2 недели. Нужна возможность легкого отката к нужной версии. Сейчас, как обычно, хранится 100500 самодостаточных архивов, содержащих все файлы программы. Но 95% файлов не меняются от релиза к релизу, или меняются раз в пару месяцев (обновление ресурсов, библиотек). В основном меняются только исполняемые файлы.
Чем не подходит git (любая другая VCS):
- Нужен примитивнейший GUI для хомячков, в котором они могут выбрать архив/папку, в котором хранятся версии и выбрать папку, в которую их «распаковать». В итоговой папке получаем готовую к запуску прогу(она у нас Portable) со всеми нужными файлами.
- Никакого ветвления (на данный момент).
- Хорошее «сжатие». То есть хранить как можно меньше данных между версиями. В самом примитивном случае - только изменившиеся файлы, в более сложном - bin diff.
- Опционально: read-only хранилище, чтобы только автор/админ мог добавлять новые версии.
Собственно:
- Есть ли готовая прога (Win + Linux)?
- Проще написать свой, примитивный гуи к существующей VCS, который будет делать то, что нужно?
- Написать свой велосипед с нуля?
PS: Компилять из git по нужному тегу - не вариант, ибо дольше, и нужны те же версии библиотек, компилятора и прочее. То есть все сборочное окружение.