Управление версиями / Управление конфигурацией для изображений Linux

В одном проекте, над которым я работаю, постоянно поддерживается базовый образ диска Linux, который клонируется на встроенные устройства.

Прямо сейчас, каждый раз, когда происходит изменение, мы регистрируем то, что мы сделали в файле, и сохраняем копию образа диска. Однако, как инженер-программист, это сталкивается с обычной практикой: использование инструментария для управления конфигурацией и контроля.

Есть ли там хороший инструмент, который может в основном сделать это на уровне файлов, что позволяет нам фиксировать / откатывать фактические файлы на диске для всей системы? Или, наоборот, есть ли что-то, что может обрабатывать огромный файл лучше, чем традиционные инструменты управления исходным кодом, которые не предназначены для гигантских двоичных файлов?

    Управление конфигурацией должно выполняться в предпочтительной форме для внесения изменений. Для образа диска это означает фактические файлы вместе со сценарием сборки для создания изображения. Причины этого связаны с причинами, по которым вы сохраняете историю в первую очередь:

    • Определите, в какой редакции была введена ошибка или функция, и кем
    • Просмотрите предыдущую версию, чтобы отладить проблему с полем, возможно, добавив к нему временный код отладки
    • Уметь создавать филиалы по разным причинам и объединять их, когда это необходимо

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

    Мы закончили тем, что добавляли ключевые файлы в исходный контроль, но не всю систему.

    У меня точно такая же проблема. на данный момент мой репозиторий для выпусков превышает 150G в git, переместился из CVS. CVS отлично обрабатывает мелкие файлы, но перехватывает файлы с несколькими G. Так. в случае, если кто-нибудь еще зайдет, вот некоторые возможные решения, на которые я смотрю:

    http://git-annex.branchable.com/

    https://github.com/jedbrown/git-fat

    https://github.com/schacon/git-media

    http://code.google.com/p/boar/

    И возможно Subversion, если он может обрабатывать 8G-файлы.