Здравствуйте, уважаемые. При опакечивании cks () столкнулся с рядом не слишком удобных моментов (опишу ниже). Основной вывод по результатам -- git поощряет использование стратегий вида "разделяй и властвуй" через механизм бранчей, но за счёт своей структуры -- требует повышенной дисциплины при её применении (раз смешав мух с котлетами, разделить их сложно). Теперь по пунктам. 1. Начальный спек. Т. к. я лентяй, то писать его мне лениво. Предпочитаю копировать откуда нибудь спек, с нужной мне функциональностью, и рихтовать его не месте. В svn я так, в лоб, и поступал. История спека сохранялась, что позволяло править спек основу и мержить её с потомками для переноса этих изменений туда. Лобовое применение же данного похода в git череповато слабоконтролируемым разрастанием размера репозитария: по мимо истории спека будет втаскиваться и история исходников (в svn это было не критично: все проекты и так были в одном репозитарии)... Способ борьбы вижу 1: держать спек в отдельном бранче и править его только там. Для сборки пакетов -- мержить с остальными компонентами. + -- такой подход позволяет сделать репозитарий спеков и применять его в качестве отдельного ингредиента. То что получилось у меня -- здесь: . Там пока только cks.spec и часть примеров с ... 2. .gear-rules Примерно тоже самое, что и со спеком. Но выражено слабее... Тоже, в отдельный бранч, вынес. (Потом, его -- сюда ). 3. Патчи Т. к. генерёжку патчей официальный gear пока не поддерживает (см. ), то пришлось изобретать свой велосипед. git2patch.sh -- скрипт простейшего вида, без защит (к письму приложен, доступен на ). При применение требует приписывания тага базы и тагов для генерации патчей. Коммит с полученными патчами наследуется от всех тагов-источников. 4. Код из отдельного источника Тоже удобно хранить в отдельном бранче. Общая структура git.alt:/people/solo/packages/cks.git: 1) gear работает с бранчем srpm; 2) в srpm все изменения попадают как слияние следующих источников: а) spec -- бранч со спеком; б) patchs -- бранч с патчами (генерится .git2patch/git2patch.sh) в) alt -- бранч с деревом исходников, перемещённым в каталог (cks-0.2.3, в моём случаи). Все изменения _только_ в этих бранчах источниках. В самом srpm -- только слияния с ними. -- С уважением. Алексей.