[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