From: Alexey Tourbin <at@altlinux.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] Метарепозиторий Сизифа
Date: Fri, 9 Nov 2007 02:04:20 +0300
Message-ID: <20071108230420.GB24160@solemn.turbinal> (raw)
In-Reply-To: <20071108223850.GB9270@basalt.office.altlinux.org>
[-- Attachment #1: Type: text/plain, Size: 3379 bytes --]
On Fri, Nov 09, 2007 at 01:38:50AM +0300, Dmitry V. Levin wrote:
> > Это тогда философский вопрос получается -- чем мёрж отличается от ребейса.
> > Если и тот и другой одинаково возможны, то в результате у мёрж-коммита
> > и ребейса будут одинаковые деревья, но разная история.
>
> Лично я воспринимаю rebase как частный и довольно точно определённый вид
> merge. Я не вижу способа перенести git'овое представление термина
> "merge by recursive" на нашу почву.
Merge -- полное сохранение истории, такой, какой она была, при том, что
в точке мёржа имеется "нематематический катаклизм". В нашем случае этот
нематематический катаклизм можно сделать немного более математическим
за счёт фактического "перепроигрывания" (или же параллельного
дублирования) истории. То есть стратегия мёржа в наших руках --
текстуального соответствия не требуется, а требуется выяснять
семантическую возможность мёржа.
Мёрж атомарен только в смысле подключения его к HEAD'у.
Сама по себе транзакция можно состоять из целого дерева коммитов.
Например, я отправил новую сборку perl-XML-LibXML, и сломался
perl-XML-LibXSLT. Не дождавшись окончания тестовой пересборки,
я собрал libxml2. Потом я получил результаты по perl-XML-LibXML
и взялся чинить perl-XML-LibXSLT. Но libxml2 сам по себе уже прошёл
в HEAD. Движение хеда на рисунке строго вертикальное.
/* merged perl-XML-LibXML with fixed perl-XML-LibXSLT
* | perl-XML-LibXSLT built ok
* | perl-XML-LibXML built ok against libxml2
|\| branch is awaken by new perl-XML-LibXSLT
| * libxml2 built ok
* | perl-XML-LibXSLT rebuild failed
`* perl-XML-LibXML built ok
То есть здесь транзакция атомарна лишь в том смысле, что потом весь
бранч подцепляется к хеду за один раз. Но может как бы происходить
новое слияние хеда в саму транзакцию. В общем, мёрж отражает "более
настоящую" историю, как это на самом деле происходит во времени.
Впрочем, я не против ребейса.
Я просто почему-то всегда думал про мёржи.
Теперь буду думать про ребейсы. :)
> В первом приближении можно, поскольку это не меняет сути дела.
> Я утверждаю, что apt-cache unmet в нынешнем виде не отвечает на тот
> вопрос, на который мы традиционно считали что отвечает. Это не значит,
> что мы не можем решать глобальную задачу сборки Сизифа, пока не решим
> конкретную проблему apt-cache unmet.
Анметы можно маскировать кофликтами.
Над этим надо будет думать в другом треде.
> > Да. Это самое слабое место. После того, как собрались пакеты
> > транзакции, нужно ждать какое-то время, пока не просчитается список
> > на тестовую пересборку. Это время в среднем наверное превышает сборку
> > поступивших пакетов + последующую тестовую пересборку.
>
> Это можно обойти, не реализуя свой алгоритм обработки графа зависимостей,
> без использования apt?
Нет. Не будет гарантии. А тут нужна гарантия, то есть "полное
вычисление состояния". Впрочем, гарантия не может быть сильнее,
чем воспроизводимость сборки пакетов. Этим тоже надо заниматься
отдельно.
> > > Наверное, можно сохранять промежуточные состояния жизни транзакции, если
> > > это интересно. Я пока не вижу, зачем это может понадобиться.
> >
> > Для анализа промежуточных конфигураций, которые образуются в ходе
> > транзакции.
>
> Какого рода анализа?
Мне интересно знать, что у кого сломалось и как они это чинили.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-11-08 23:04 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-06 21:35 Alexey Tourbin
2007-11-07 5:23 ` Alexey Tourbin
2007-11-07 5:50 ` Хихин Руслан
2007-11-07 7:01 ` Alexey Tourbin
2007-11-07 21:37 ` Kirill A. Shutemov
2007-11-07 10:16 ` Alexey I. Froloff
2007-11-07 10:38 ` Alexey Gladkov
2007-11-07 10:39 ` Alexey Gladkov
2007-11-07 10:43 ` Alexey Gladkov
2007-11-07 10:49 ` Alexey Gladkov
2007-11-08 17:42 ` Dmitry V. Levin
2007-11-08 18:38 ` Sergey Vlasov
2007-11-08 20:17 ` Dmitry V. Levin
2007-11-08 19:03 ` Alexey Tourbin
2007-11-08 19:20 ` Kirill A. Shutemov
2007-11-08 19:46 ` Alexey Tourbin
2007-11-08 19:23 ` [devel] bootstrap транзакции Alexey Tourbin
2007-11-08 21:20 ` [devel] Метарепозиторий Сизифа Dmitry V. Levin
2007-11-08 22:08 ` Alexey Tourbin
2007-11-08 22:30 ` [devel] git-репозитарий для логов сборки Alexey Tourbin
2007-11-08 22:48 ` Dmitry V. Levin
2007-11-08 23:28 ` Alexey Tourbin
2007-11-09 1:09 ` Dmitry V. Levin
2007-11-09 1:21 ` Alexey Tourbin
2007-11-09 2:06 ` Alexey Tourbin
2007-11-08 22:38 ` [devel] Метарепозиторий Сизифа Dmitry V. Levin
2007-11-08 23:04 ` Alexey Tourbin [this message]
2007-11-09 1:06 ` Alexey Tourbin
2007-11-09 6:44 ` Kirill A. Shutemov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071108230420.GB24160@solemn.turbinal \
--to=at@altlinux.ru \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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