[docs] Сизифов труд: глава про git/gear

Kirill Maslinsky kirill на altlinux.ru
Чт Ноя 16 19:26:34 MSK 2006


> > То есть идея в том, что на публикацию изменений не нужно получать
> > разрешения от _человека_, т. е. мантейнера или инкомингера, а
> > таковое изменение принимается при соблюдении определенных
> > технических условий.
> 
> Кирилл, я правильно тебя понял, что что при использовании gear ЛЮБОЙ 
> сопровождающий сможет залить в Сизиф любой пакет, главное, чтоб 
> он "технически" был корректным ?

Да, идея такая, нужно только уточнить детали:

1. Этому утверждению еще только предстоит стать верным. 
	Пока процесс публикации пакетов в Сизифе работает по-старому, 
	через incoming.

2. неточно: "при использовании gear"
	право на публикацию пакетов в Сизифе приобретают те, 
	кто имеет аккаунт на git.alt

3. предполагаемая процедура публикации пакета в Сизифе 
	принципиально будет устроена так:

	0) имеется _кеширующий репозиторий Сизифа_ (на сегодня его не имеется)
		в нем хранятся копии всех репозиториев с git.alt, на основании
		которых были произведены успешные сборки пакетов в Сизиф

	1) сопровождающий организует на git.alt репозиторий, пригодный 
		для сборки пакета с помощью gear
	2) и публикует в этом репозитории тег специального вида, 
		являющийся указанием сборочной системе на сборку пакета
		из этого репозитория
	3) сборочная система отслеживает публикацию тега, получает 
		репозиторий и проверяет, является ли помеченный 
		"сборочным" тегом объект репозитория наследником 
		_предшествующей удачной сборки этого пакета_ (если таковая была).

			git позволяет проверять наследование объектов и
			гарантирует нефальсифицируемость истории измений

		С помощью такой проверки мы получаем гарантию,
		что вне зависимости от того, кто делает изменения, 
		это история изменений одного и того же объекта.
	4) в случае успешной сборки, репозиторий, на основании которого 
		она была произведена, помещается в тот самый 
		_кеширующий репозиторий Сизифа_, о котором шла речь выше.
	
	Рассмотрим для примера случай NMU:

	1) имеется последняя успешная сборка пакета, сделанная мантейнером (M0)
	2) имеется успешный NMU, основанный на этой сборке (M0->N)
	3) следующая сборка, сделанная мантейнером, 
		- не может быть основана на его предыдущей успешной сборке 
		  (M0->M1), случай утраты изменений 
		- а может быть основана только на успешном NMU
		  (M0->N->M1), мантейнер не может потерять изменения, внесенные в 
		  его пакет кем-то другим

Пусть меня поправят, если я наврал.

-- 
Kirill Maslinsky
ALT Linux Documentation Team
http://heap.altlinux.ru
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.altlinux.org/pipermail/docs/attachments/20061116/834c628b/attachment.bin 


Подробная информация о списке рассылки docs