Artem Zolochevskiy пишет: > 24.11.08, Aleksey Avdeev написал(а): >> Artem Zolochevskiy пишет: >>> hi all >>> >> ... >>> Подскажите, как лучше организовать такго рода репозиторий. >>> Моих познаний хватает только для таких вариантов: >>> 1. >>> делать коммиты на изменения текста строго отдельно. И тогда при >>> необходимости внесения этих изменений в другую ветку, делать точечные >>> cherry-pick >>> 2. >>> вынести сам текст (без png) в отдельный бранч: например upstream (хотя >>> можно и master). Править его там. В "пакетных" бранчах же (например >>> назовём их office и school) держать png-шки + пакетосборочное >>> хозяйство и делать merge с бранчем, содержащим текст. Тогда картинки >>> остаются на сових местах. >> Я бы пошёл этим путём. Причём т. к. пакетосборочное хозяйство >> отличается в основном именем спека (сами спеки имеют минимальное >> отличия) -- завёл бы дополнительный бранч с переименованным спеком (это >> позволит автоматизировать мержи). > > ага. понятно. > только про спек не до конца. предполагается держать имя спека > одинаковым для двух пакетов? Нет. Предлагаю держать специально обученный бранч для переименований (см. no-png/master-school в ). Если в нём производить только переименование файлов -- это весьма упростит pull. Например, после правок в no-png/master: $ git checkout -f no-png/master-school $ git pull . no-png/master $ git checkout -f no-png/school $ git pull . no-png/master-school На этом этапе возможны конфликты. Их надо будет разрешить. $ git checkout -f school $ git pull . no-png/school > >>> Одним словом, прошу совета бывалых. >>> >>> Пока оно вот в таком состоянии: >>> http://git.altlinux.org/people/azol/private/docs-install_office_server.git >>> Просто как два отдельных бранча. >> Правильно понимаю что, по факту, school делался на основе master? > > да. но дальнейшие правки будут производится именно по отношению к > school ибо он как раз в работе находится. так что потом придётся по > идее в другую сторону изменения переносить (из school в master). Тогда потребуется ещё один технический бранч, заточенный на обратное переименование: $ git checkout -b no-png/school-master no-png/school $ git mv docs-install_{school,office}_server.spec $ git commit ... Использование аналогично no-png/master-school. -- С уважением. Алексей.