ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] I: gear, git-srpmimport
@ 2006-05-23  0:43 Dmitry V. Levin
  2006-05-23  5:30 ` Alexey I. Froloff
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2006-05-23  0:43 UTC (permalink / raw)
  To: ALT Devel discussion list

[-- Attachment #1: Type: text/plain, Size: 2348 bytes --]

Hi,

В gear с момента последнего обсуждения реализованы ещё две возможности:
1. Новая конструкция вида "exclude: glob_pattern..".  Такие исключения
могут быть указаны в любой строке .gear-rules и влияют на все директивы
семейства copy (т.е. местоположение exclude не имеет значения).
2. Параметр base= в директивах семейства tar может принимать пустое
значение.  В этом случае в запаковываемый тарболл попадёт содержимое
каталога, но не сам каталог.

Скрипт commit-srpms дорос до утилиты git-srpmimport, у которой слегка
другой интерфейс и которая по умолчанию не только разжимает, но и
распаковывает тарболлы.

Например, "git-srpmimport glibc-2.3.6-alt6.src.rpm" распакует содержащиеся
в glibc-2.3.6-alt6.src.rpm тарболлы:
glibc-2.3.6.tar
glibc-fedora-20050428T0846.tar
glibc-helpers.tar
glibc-libidn-2.3.6.tar
glibc-linuxthreads-2.3.6.tar

в каталоги:
glibc
glibc-fedora
glibc-helpers
libidn
glibc-linuxthreads

Автоматически заполняемый при импорте файл .gear-rules при этом будет
содержать:
$ grep ^tar .gear-rules 
tar: glibc name=glibc-2.3.6
tar: glibc-fedora name=glibc-fedora-20050428T0846 base=
tar: glibc-helpers name=glibc-helpers
tar: libidn name=glibc-libidn-2.3.6 base=libidn
tar: glibc-linuxthreads name=glibc-linuxthreads-2.3.6 base=

Зачем бывает полезно хранить тарболлы полностью распакованными?
Я вижу как минимум три плюса:
+ Удобство: готовность к работе у развёрнутого дерева выше; это касается
как непосредственно работы с распакованным деревом, так и git-diff.
+ Производительность: git работает с большим числом небольших файлов
быстрее, чем с эквивалентным небольшим числом больших файлов.
+ Ресурсоёмкость: Для обработки и хранения в упакованном виде большого
числа небольших файлов требуется меньше ресурсов, чем для эквивалентного
небольшого числа больших файлов.

Вероятно, последние два плюса можно рассматривать как недочёты в работе с
большими файлами, которые когда-нибудь будут исправлены.  Первый плюс
никуда не денется в любом случае.

Впрочем, распакованный тарболл, в отличие от разжатого, теряет свою
оригинальность (т.е. он, строго говоря, уже не pristine source), а также
часть информации (владельцы файлов, полные права доступа, даты модификации),
которая может быть важна для сборки пакета (хотя таких зависимостей лучше
избегать).


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 191 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2006-05-30 22:56 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-23  0:43 [devel] I: gear, git-srpmimport Dmitry V. Levin
2006-05-23  5:30 ` Alexey I. Froloff
2006-05-23 10:59   ` Dmitry V. Levin
2006-05-23 11:06     ` Alexey I. Froloff
2006-05-23  7:10 ` Kirill A. Shutemov
2006-05-30 20:31   ` Dmitry V. Levin
2006-05-30 22:56     ` Dmitry V. Levin
2006-05-23  7:18 ` Anton Farygin
2006-05-23 11:08   ` Dmitry V. Levin

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git