Подмога mercurial scm в деле создания патчей к дереву портов

Все вопросы по установке, обновлению и эксплуатации FreeBSD: конфигурация и сопровождение.

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Подмога mercurial scm в деле создания патчей к дереву портов

Непрочитанное сообщение hizel » 2010-01-29 14:44:34

Код: Выделить всё

>cd /usr/ports
файлик с масками тех файлов которые игнорируем в репке

Код: Выделить всё

>cat .hgignore
syntax: glob
distfiles/*
INDEX*
.portsnap*
.*
*~
syntax: regexp
\w+/\w+/work/
создаем репку

Код: Выделить всё

>hg init
и коммитим туда текущее деревцо

Код: Выделить всё

hg commit -q --addremove --message Init
курим, пьем кофе, ждём :(

пока пьем набиваем одной рукой .hgrc в своем /home

cat ~/.hgrc

Код: Выделить всё

[ui]
username = Gans Otto <gans.otto@gmail.com>

[extensions]
hgext.mq =
отработал commit смотрим лог
>hg log

Код: Выделить всё

changeset:   0:4a0c89096a40
tag:         tip
user:        Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 14:52:58 2010 +0300
summary:     Init
есть контакт, далее включаем Mercurial Queues и создаем первый патч, в моем случае он будет для nagiosgraph

Код: Выделить всё

>hg qinit
>hg qnew -m 'upgrade nagiosgraph to 1.4' nagiosgraphics1.4.patch
>hg log
changeset:   1:9be087d77c68
tag:         qtip
tag:         nagiosgraphics1.4.patch
tag:         tip
tag:         qbase
user:         Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 14:59:58 2010 +0300
summary:     upgrade nagiosgraph to 1.4

changeset:   0:4a0c89096a40
tag:         qparent
user:         Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 14:52:58 2010 +0300
summary:     Init
теперь правим файлики, морщим лоб, изображаем бурную деятельность - в процессе смотрим hg diff

сделали дело, обнволяем текущий патч

Код: Выделить всё

>hg qrefresh
в .hg/patches/ у нас уже давно лежат файлики

Код: Выделить всё

total 14
-rw-r--r--  1 root  wheel  8207 Jan 29 15:04 nagiosgraphics1.4.patch
-rw-r--r--  1 root  wheel    24 Jan 29 14:59 series
-rw-r--r--  1 root  wheel    65 Jan 29 15:04 status
теперь у нас в nagiosgraphics1.4.patch лежат изменения дерева портов которые мы проделали

текущие наложенные патчи, смотрим

Код: Выделить всё

>hg qapplied
nagiosgraphics1.4.patch
патчи которые существуют смотрим

Код: Выделить всё

>hg qseries
nagiosgraphics1.4.patch
далее, убираем из дерева портов наши изменения

Код: Выделить всё

hg qpop
popping nagiosgraphics1.4.patch
patch queue now empty
теперь дерево портов пришло в состояние до изменения, обновляем порты через cvsup\portsnap и т.д.
суем изменения в репку

Код: Выделить всё

>hg commit -q --addremove --message 'update'
>hg log
changeset:   1:c7b26792ae47
tag:         tip
user:         Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 15:12:56 2010 +0300
summary:     update

changeset:   0:4a0c89096a40
user:         Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 14:52:58 2010 +0300
summary:     Init
и накладываем патч получая свежее дерево портов со своим патчем :D

Код: Выделить всё

>hg qpush
applying nagiosgraphics1.4.patch
now at: nagiosgraphics1.4.patch
>hg log
changeset:   2:85ad11080524
tag:         qtip
tag:         nagiosgraphics1.4.patch
tag:         tip
tag:         qbase
user:        hizel-srv <hizel@vyborg.ru>
date:        Fri Jan 29 15:15:09 2010 +0300
summary:     upgrade nagiosgraph to 1.4

changeset:   1:c7b26792ae47
tag:         qparent
user:        Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 15:12:56 2010 +0300
summary:     update

changeset:   0:4a0c89096a40
user:        Gans Otto <gans.otto@gmail.com>
date:        Fri Jan 29 14:52:58 2010 +0300
summary:     Init

не забываем выслать PR с содержимым

Код: Выделить всё

hg tip -p
куда следует

подробная документация в книге: http://hgbook.red-bean.com/


P.S. плять опять pkg-plist.orig затисался
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Подмога mercurial scm в деле создания патчей к дереву портов

Непрочитанное сообщение hizel » 2010-02-11 15:23:06

при добавлении новых файлов - не забываем делать hg add
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.