From: Mikhail Yakshin <greycat@altlinux.org>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] I: gear-tarimport
Date: Wed, 31 Jan 2007 13:22:15 +0300
Message-ID: <45C06DD7.9070906@altlinux.org> (raw)
In-Reply-To: <20070130115510.GA2088@mw.local.seiros.ru>
Денис Смирнов пишет:
> MY> Посмотрел, спасибо, я раньше не знал о существовании этого пакета. Там
> MY> есть масса полезных вещей (например, gear-rel, svn-update, gi,
> MY> git-repos-cleanup, send-devel, pkg_release, sisyphus-list-incoming - они
> MY> все по образу действия по-моему достаточно близки к comfort и хотелось
> MY> бы их действительно по возможности объединить туда).
>
> Я только за. Потому как по моему личному мнению наличие в сизифе каждого
> пакета с именем "<firmname>..." это неявная бага. Если пакет seiros-.*
> используется только у меня, то ему не место в сизифе. А если используется
> не только мной, то почему бы не объединить все подобные утилиты в один
> пакет?
Ура =) Очень близкая мысль :)
> MY> Относительно некоторых утилит - мне с первого взгляда оказалось не
> MY> очевидным, что они делают %)
> MY> ptch - для каких работ это предназначено? В git сейчас не проще просто
> MY> скоммитить все "до" и "после" и вытащить этот патч, если он нужен
> MY> файлом, просто с помощью разницы между ref'ами?
>
> Это для старой эпохи, хотя и сейчас изредка нужно. Есть некий workdir,
> который не использует никакого SCM. Мы берем в нем и редактируем
> некоторые файлы, переименовывая оригиналы в *.orig. Потом запускаем этот
> файл, и получаем вывод по смыслу тот же что если бы мы набрали svn
> diff/git diff в workdir где они используются.
>
> Сейчас я его использую в следующем случае:
> - rpmbb <spec>
> - В BUILD имеем несобравшийся пакет
> - переименовываю то что пытаюсь править в .orig и запускаю make (чтобы не
> пересобирать весь пакет)
> - повторяю предыдущий шаг до тех пор пока пакет не соберется
> - ptch > 1.patch
> - переношу этот патч в каталог с git, и либо привязываю его как новый
> патч к пакету, либо набираю patch -p0 < 1.patch
Вот, отлично, еще одна схема workflow у нас появилась :) Как бы ее
проапгрейдить для git'а? Например, чтобы собираемый патч автоматически
привязывался к пакету в git'е и прописывался как "PatchX: ..." и %patch
что-то там?
> MY> ptch_filter - один из самых интересных, по идее, скриптов - он как-то
> MY> хитро фильтрует патчи - но как - я с первого взгляда не понял.
>
> Он глючный, поэтому и лежит в отдельном пакете :( Он мне здорово помогал
> обрабатывать результат сравнения бранчей астериска.
Его как-то более универсально можно использовать? И - в идеале -
учитывая то, что пакет лежит в репозитарии?
> MY> Что *именно* делают Add и Mv, кроме наиболее общих "добавляют все, что
> MY> не добавлено" и "перемещают все массово из одного места в другое" с
> MY> пустыми commit messages - я так и не понял? Update - зачем там делаются
> MY> эти хитрые chmod'ы?
>
> Add/Mv делают именно это. Наследие тяжелого прошлого когда я хранил _все_
> свои данные в svn, естественно далеко не для всех имела смысл история с
> commit messages. Кстати Mv умеет ключик -b, когда он не пытается
> коммитить.
>
> В случае с git эти скрипты не имеют смысла, потому как есть:
> git add (делает то же что Add)
> git mv (который точно так же как Mv прекрасно обрабатывает группы файлов,
> чего не умеет svn mv).
>
> Их имеет смысл паковать только в том случае, если доработать до
> универсальности (работы как с svn, так и с git репозиториями). Если
> приходится работать с группой репозиториев в разных SCM, то честно говоря
> сильно достает использовать разный набор команд для простых операций.
>
> Когда-нибудь я озверею и напишу даже скрипт Commit :)
>
> Вообще эта группа недоскриптов если и нужна, то их следует упаковать в
> отдельный пакет. Хотя бы потому что они тянут зависимость и на git, и на
> svn. А если я чего-нибудь не того выпью, то и на cvs потянут.
Т.е. отдельный маленький проект - организация общего интерфейса ко всем
version control системам. По-моему - нужная и полезная вещь.
> Вообще многие такие вещи имеет смысл бить на пакеты из-за очень большого
> объема requires.
Согласен. Но некий базовый workflow-пакет с разумным объемом requires
IMHO имеет право на существование.
> MY> В перспективе - мне хотелось бы еще поговорить с lav@ насчет
> MY> etersoft-build-utils - т.к. там масса наработок по сборке пакетов и
> MY> абсолютно не хочется дублировать эту функциональность в comfort, набивая
> MY> все те же самые грабли, что уже наметили на карте добрые люди и
> MY> изобретать велосипед (особенно впечатляет там сборка из одного ALT'ового
> MY> spec в кучу дистрибутивов). В идеале - хотелось бы интегрироваться в ту
> MY> или другую сторону, т.к. я умышленно сейчас в comfort делал сборку
> MY> пакетов в очень минимальном виде, а в etersoft-build-utils нет некоего
> MY> workflow для git. Вместе получилось бы хорошо.
>
> Думаю да. В любом случае получится один low level и стайка high level
> пакетов.
> Кстати etersoft-build-utils мы с lav@ уже давно допинали до
> работоспособности с gear. rpmbb <specname> в git repo отрабатывает именно
> так как ожидается.
Насколько я видел, когда смотрел последний раз - там просто меняется
оборачивается использование rpmbuild или hsh в gear, если есть каталог .git.
Что бы мне лично хотелось видеть в утилите, которая собирает:
1. Возможность запуска без параметров для сборки того пакета, в
директории с репозитарием которого я сейчас нахожусь. (Распространяется
не только на саму директорию с .git, но и все ее поддиректории).
2. Возможность запуска, указав только имя пакета (пакет найдется в
репозитарии $HOME/git/имя-пакета) - типа "rpmbb samba". При
невозможности найти такой репозитарий должна быть выведена подсказка,
какими способами заполучить такой репозитарий себе (скачать, создать,
импортировать и т.п).
3. Возможность запуска, указав путь к репозитарию.
4. После успешной сборки - подсказку, что дальше можно сделать с
собранным пакетом: поставить себе в систему, поставить в виртуальную
систему, поставить
5. Утилиту(ы) с единым синтаксисом для сборки в rpmbuild и hasher -
отличающуюся либо суффиксом в названии (build-rpmbuild, build-hasher),
либо какой-то опцией (build --engine=rpmbuild, build --engine=hasher).
Второе даже предпочительнее, т.к. можно этот самый engine по умолчанию
задать через конфиг, кому как удобнее.
6. Сокрытие SRPMок как таковых от пользователя - они создаются и живут
только где-то внутри. Наружу они выходят только для отправки в инкаминг
и то, пока этот механизм не умрет.
Кто-нибудь может высказать еще какие-то соображения?
--
WBR, Mikhail Yakshin AKA GreyCat
next prev parent reply other threads:[~2007-01-31 10:22 UTC|newest]
Thread overview: 138+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-01-24 13:47 [devel] Import cvs to git Vitaly Ostanin
2007-01-24 17:00 ` Sergey Vlasov
2007-01-25 17:05 ` [devel] I: gear-tarimport (was: Re: Import cvs to git) Aleksey Avdeev
2007-01-25 19:59 ` [devel] I: gear-tarimport Mikhail Yakshin
2007-01-25 21:19 ` Alexey I. Froloff
2007-01-25 22:59 ` Mikhail Yakshin
2007-01-26 6:44 ` Kirill Maslinsky
2007-01-26 10:57 ` Mikhail Yakshin
2007-01-27 10:10 ` Anton Farygin
2007-01-27 13:08 ` Kirill Maslinsky
2007-01-27 14:16 ` Mikhail Yakshin
2007-01-27 15:08 ` [devel] git: plumbing or porcelain Dmitry V. Levin
2007-01-27 13:47 ` [devel] I: gear-tarimport Alexey I. Froloff
2007-01-27 15:22 ` [devel] comfort Dmitry V. Levin
2007-01-27 20:48 ` [devel] [flame] было про сomfort, стало про spt Denis Medvedev
2007-01-28 17:05 ` Nick S. Grechukh
2007-01-28 18:48 ` Konstantin A. Lepikhov
2007-01-28 19:28 ` Nick S. Grechukh
2007-01-28 19:47 ` Konstantin A. Lepikhov
2007-01-28 19:52 ` Nick S. Grechukh
2007-01-28 20:06 ` Konstantin A. Lepikhov
2007-01-28 20:11 ` [devel] [flame] было про сomfort , " Hihin Ruslan
2007-01-28 20:25 ` Konstantin A. Lepikhov
2007-01-28 21:03 ` Hihin Ruslan
2007-01-28 21:29 ` Konstantin A. Lepikhov
2007-01-29 5:40 ` Hihin Ruslan
2007-01-28 21:28 ` Denis Medvedev
2007-01-28 21:41 ` Konstantin A. Lepikhov
2007-01-29 6:46 ` Denis Medvedev
2007-01-29 15:03 ` [devel] mkmar Dmitry V. Levin
2007-02-02 11:23 ` [devel] I: gear-tarimport Nick S. Grechukh
2007-01-27 13:57 ` Alexey I. Froloff
2007-01-27 14:30 ` Mikhail Yakshin
2007-01-27 14:51 ` Alexey I. Froloff
2007-01-27 15:39 ` Mikhail Yakshin
2007-01-27 17:49 ` Michael Shigorin
2007-01-27 17:57 ` Sviatoslav Sviridov
2007-01-28 15:20 ` Alexey Tourbin
2007-01-28 5:10 ` Денис Смирнов
2007-01-28 15:13 ` Mikhail Yakshin
2007-01-28 16:24 ` Alexey I. Froloff
2007-01-28 20:32 ` [devel] I: gear-tarimport (habits) Michael Shigorin
2007-01-28 21:14 ` Alexey Tourbin
2007-01-28 23:37 ` [devel] I: gear-tarimport Kirill A. Shutemov
2007-01-29 18:45 ` Денис Смирнов
2007-01-29 20:27 ` Mikhail Yakshin
2007-01-29 20:35 ` Alexey Tourbin
2007-01-29 21:32 ` Mikhail Yakshin
2007-01-29 21:45 ` Eugene Ostapets
2007-01-29 21:56 ` Alexey Tourbin
2007-01-29 21:59 ` Eugene Ostapets
2007-01-29 22:58 ` Alexey I. Froloff
2007-01-30 4:30 ` Andrey Rahmatullin
2007-01-30 12:02 ` Денис Смирнов
2007-01-30 12:00 ` Денис Смирнов
2007-01-30 11:57 ` Денис Смирнов
2007-01-30 11:55 ` Денис Смирнов
2007-01-30 12:06 ` Led
2007-01-30 12:16 ` Денис Смирнов
2007-01-30 12:43 ` Led
2007-01-30 19:55 ` Денис Смирнов
2007-01-30 22:03 ` Dmitry V. Levin
2007-01-31 9:18 ` [devel] ~/.config/ (was gear-tarimport) Led
2007-01-31 9:22 ` Eugene Ostapets
2007-01-31 9:35 ` Mikhail Yakshin
2007-01-31 9:37 ` Eugene Ostapets
2007-01-31 11:36 ` Денис Смирнов
2007-01-31 12:24 ` Mikhail Yakshin
2007-01-31 12:46 ` Денис Смирнов
2007-01-31 13:01 ` Mikhail Yakshin
2007-01-31 14:11 ` Денис Смирнов
2007-02-02 19:06 ` Kirill Maslinsky
2007-02-02 23:20 ` Денис Смирнов
2007-01-31 13:13 ` Sergey Vlasov
2007-01-31 18:02 ` Alexey I. Froloff
2007-01-31 9:48 ` Led
2007-01-31 9:57 ` Damir Shayhutdinov
2007-01-31 10:05 ` Eugene Ostapets
2007-01-31 10:21 ` Damir Shayhutdinov
2007-01-31 10:30 ` Eugene Ostapets
2007-01-31 10:43 ` Led
2007-01-31 10:43 ` Mikhail Yakshin
2007-01-31 10:47 ` Eugene Ostapets
2007-01-31 10:56 ` Led
2007-02-03 6:46 ` Vitaly Lipatov
2007-01-31 11:38 ` Денис Смирнов
2007-01-31 11:41 ` Led
2007-01-31 11:42 ` Денис Смирнов
2007-01-31 11:49 ` Dmitry V. Levin
2007-01-31 12:26 ` Mikhail Yakshin
2007-01-31 12:43 ` Денис Смирнов
2007-01-31 12:54 ` Damir Shayhutdinov
2007-01-31 14:09 ` Денис Смирнов
2007-01-31 14:22 ` Damir Shayhutdinov
2007-01-31 14:24 ` Damir Shayhutdinov
2007-01-31 15:17 ` Денис Смирнов
2007-01-31 15:16 ` Денис Смирнов
2007-01-31 15:27 ` Damir Shayhutdinov
2007-01-31 16:30 ` Денис Смирнов
2007-01-31 16:37 ` Damir Shayhutdinov
2007-01-31 16:45 ` Денис Смирнов
2007-01-31 16:48 ` Damir Shayhutdinov
2007-01-31 17:09 ` Денис Смирнов
2007-01-31 12:59 ` Led
2007-01-31 14:08 ` Денис Смирнов
2007-01-31 14:28 ` Mikhail Yakshin
2007-01-31 15:14 ` Денис Смирнов
2007-01-31 16:37 ` Денис Смирнов
2007-01-31 10:06 ` Led
2007-01-31 9:59 ` Eugene Ostapets
2007-01-31 11:34 ` Денис Смирнов
2007-01-31 11:33 ` Денис Смирнов
2007-01-31 9:33 ` [devel] I: gear-tarimport Mikhail Yakshin
2007-01-31 9:55 ` Mikhail Gusarov
2007-01-31 10:04 ` Mikhail Gusarov
2007-01-31 10:33 ` Mikhail Yakshin
2007-01-31 10:40 ` Eugene Ostapets
2007-01-30 11:55 ` Денис Смирнов
2007-01-30 12:04 ` Led
2007-01-31 10:22 ` Mikhail Yakshin [this message]
2007-01-31 12:42 ` Денис Смирнов
2007-02-01 22:37 ` [devel] Maintainer's toolbox (was: I: gear-tarimport) Mikhail Yakshin
2007-02-01 23:58 ` Денис Смирнов
2007-02-02 9:21 ` [devel] Maintainer's toolbox Mikhail Yakshin
2007-02-02 10:16 ` Michael Shigorin
2007-02-02 15:16 ` Mikhail Yakshin
2007-02-03 21:29 ` [devel] [JT] " Michael Shigorin
2007-02-02 14:59 ` [devel] " Денис Смирнов
2007-02-02 15:31 ` Mikhail Yakshin
2007-02-09 0:47 ` Денис Смирнов
2007-01-27 15:10 ` [devel] I: gear-tarimport Mikhail Gusarov
2007-02-02 11:21 ` Led
2007-01-27 18:32 ` Alexey I. Froloff
2007-01-28 14:44 ` Mikhail Yakshin
2007-01-27 11:54 ` Aleksey Avdeev
2007-01-27 12:54 ` Mikhail Yakshin
2007-01-27 13:07 ` Aleksey Avdeev
2007-01-25 18:34 ` [devel] Import cvs to git Sergey Vlasov
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=45C06DD7.9070906@altlinux.org \
--to=greycat@altlinux.org \
--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