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