[devel] организация git-репозитория, содежащего нетекстовые данные
Aleksey Avdeev
=?iso-8859-1?q?solo_=CE=C1_solin=2Espb=2Eru?=
Пн Ноя 24 13:07:17 MSK 2008
Artem Zolochevskiy пишет:
> 24.11.08, Aleksey Avdeev<solo на solin.spb.ru> написал(а):
>> Artem Zolochevskiy пишет:
>>> hi all
>>>
>> ...
>>> Подскажите, как лучше организовать такго рода репозиторий.
>>> Моих познаний хватает только для таких вариантов:
>>> 1.
>>> делать коммиты на изменения текста строго отдельно. И тогда при
>>> необходимости внесения этих изменений в другую ветку, делать точечные
>>> cherry-pick
>>> 2.
>>> вынести сам текст (без png) в отдельный бранч: например upstream (хотя
>>> можно и master). Править его там. В "пакетных" бранчах же (например
>>> назовём их office и school) держать png-шки + пакетосборочное
>>> хозяйство и делать merge с бранчем, содержащим текст. Тогда картинки
>>> остаются на сових местах.
>> Я бы пошёл этим путём. Причём т. к. пакетосборочное хозяйство
>> отличается в основном именем спека (сами спеки имеют минимальное
>> отличия) -- завёл бы дополнительный бранч с переименованным спеком (это
>> позволит автоматизировать мержи).
>
> ага. понятно.
> только про спек не до конца. предполагается держать имя спека
> одинаковым для двух пакетов?
Нет. Предлагаю держать специально обученный бранч для переименований
(см. no-png/master-school в
<http://git.altlinux.org/people/solo/packages/?p=docs-install_office_server.git>).
Если в нём производить только переименование файлов -- это весьма
упростит 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.
--
С уважением. Алексей.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 552 байтов
Описание: OpenPGP digital signature
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20081124/5bd68579/attachment.bin>
Подробная информация о списке рассылки Devel