ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Gladkov <legion@altlinux.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: Re: [devel] gear-changelog
Date: Tue, 14 Apr 2009 22:20:28 +0400
Message-ID: <49E4D3EC.4020300@altlinux.ru> (raw)
In-Reply-To: <9d5146970904140816u189f7a8avb18b2841b42f757d@mail.gmail.com>

14.04.2009 19:16, Afanasov Dmitry wrote:
> /me до сих не допер, как gear-changelog юзать и ничего, живой вроде :)


Ну эта команда была сделана когда в нескольких своих проектах я устал
делать механическую работу перед релизом.

Эта утилита формирует changelog, но делает это несколько иначе чем 
git-shortlog. Вот, например, вывод последнего:

Alexey Gladkov (11):
      Add license
      shell-var: Add new source
      shell-args: parse_common_option(): Option --quiet cancels option --verbose
      shell-var: shell_var_unquote(): Returns the value through eval
      shell-var: Rename shell_var_{no,yes} -> shell_var_is_{no,yes}
      Merge branch 'shell-var'
      shell-lists: Add new source
      shell-quote: Add quote_shell_args()
      shell-quote: Fix Usage for quote_shell_args
      shell_var_unquote(), string_quote_remove(): Fix "'" unquote for bash
      shell-quote: Rewrite quote_shell_args() from scratch, to avoid the dangerous shell constructions

Из 11 коммитов как тут сделать changelog можно, но если коммитов
значительно больше и изменения ещё более дифференцированы, то радости
никакой при этом не испытываешь. Я сломался на втором большом релизе. 

Утилита gear-changelog выводит коммиты от последнего тега, если не указано другое.

Вот вывод те же изменения, но полученные через gear-changelog:

$ gear-changelog
* Tue Apr 14 2009 Alexey Gladkov <legion@altlinux.org> 0.0.9-alt2
- shell-quote changes:
  + Rewrite quote_shell_args() from scratch, to avoid the dangerous
    shell constructions.
  + Fix Usage for quote_shell_args.
  + Add quote_shell_args().
- shell-var changes:
  + Rename shell_var_{no,yes} -> shell_var_is_{no,yes}.
  + shell_var_unquote(): Returns the value through eval.
  + Add new source.
- Other changes:
  + Update .gear/changelog.
  + shell_var_unquote(), string_quote_remove(): Fix "'" unquote
    for bash.
  + shell-lists: Add new source.
  + shell-args: parse_common_option(): Option --quiet cancels
    option --verbose.
  + Add license.

Они сгруппированы и из них выброшены некоторые лишние коммиты.
Как это сделано:

gear-changelog использует набор со своими правилами. Формат их таков:

width: <NUM>

Это глобальная директива в правилах, указывающая ширину строки.

group: <TITLE>
regexp: <PATTERN>
filter: <SED-S-COMMAND>

Первая строка это заголовок группы, вторая это grep-паттерн для того,
чтобы отнести коммит к этой группе, третья (необязательная) строчка
это sed'овкий s/// для возможных исправлений. Например:

group: shell*-config changes
regexp: ^shell(-ini)?-config:
filter: s/^shell(-ini)?-config: //

group: Documentation changes
regexp: ^[^:]+\.man:

group: Other changes
regexp: .*

Можно не заниматься группировками и вызвать утилиту без правил
вообще (--no-rules) и/или не применять группировку (--no-groups).
В этом случае вывод будет прост. Но мне кажется что группировать по
префиксу коммита очень удобно... особенно если с терминологией
определишься. Это помогает и коммиты более понятные делать и changelog
формировать.

У самой утилиты gear-changelog очень мало опций, единственная которая
ещё достоена внимания это --format. Эта утилита генерирует changelog
не только в rpm формате, формально она поддерживает ещё и deb и gnu.

За два последних прошу не пинать. Я добавлял их из соображений не
прибивания одного какого-то формата вывода. Они сделаны just-for-fun,
но похожи на настоящие :)

> увидеть бы последовательность команд и ошибки, тогда проще было бы.
> чем лопатить яростную переписку.

Приведённый тут вывод был получен на дрепозитории:

http://git.altlinux.org/people/legion/packages/libshell.git

Вот как выглядbт его gear/changelog:

http://git.altlinux.org/people/legion/packages/libshell.git?p=libshell.git;a=blob;f=.gear/changelog;hb=HEAD

-- 
Rgrds, legion



  reply	other threads:[~2009-04-14 18:20 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-10 12:05 ` [devel] Что делать с XFCE? Alexey Rusakov
2009-04-10 12:46     ` Grigory Batalov
2009-04-10 12:50     ` Eugene Ostapets
2009-04-13 11:29         ` Andrii Dobrovol`s`kii
2009-04-13 12:55             ` Mikhail Gusarov
2009-04-13 12:55             ` kga@altlinux.org
2009-04-13 13:38                 ` Mikhail Gusarov
2009-04-13 14:39               ` Motsyo Gennadi aka Drool
2009-04-13 14:40                 ` Mikhail Gusarov
2009-04-13 14:49                   ` Motsyo Gennadi aka Drool
2009-04-13 14:51                     ` Mikhail Gusarov
2009-04-13 14:55                       ` Andrii Dobrovol`s`kii
2009-04-13 15:11                         ` Mikhail Gusarov
2009-04-13 15:15                           ` Andrii Dobrovol`s`kii
2009-04-13 15:32                             ` Mikhail Gusarov
2009-04-13 15:17                         ` Motsyo Gennadi aka Drool
2009-04-13 15:32                         ` [devel] gear-update question Dmitry V. Levin
2009-04-13 17:35                         ` [devel] gear-update работает отлично Anton Farygin
2009-04-14  9:04                           ` Andrii Dobrovol`s`kii
2009-04-14  9:19                             ` Slava Semushin
2009-04-14  9:22                             ` Alexey Gladkov
2009-04-14  9:15                               ` Andrii Dobrovol`s`kii
2009-04-14  9:33                                 ` Alexey Gladkov
2009-04-14 10:42                                   ` Andrii Dobrovol`s`kii
2009-04-14 12:49                                     ` Dmitry V. Levin
2009-04-14 13:19                                       ` Andrii Dobrovol`s`kii
2009-04-14 14:15                                         ` Alexey Gladkov
2009-04-14 14:43                                           ` Andrii Dobrovol`s`kii
2009-04-14 14:46                                             ` Andrey Rahmatullin
2009-04-14 14:47                                             ` Mikhail Gusarov
2009-04-14 14:48                                             ` Alexey Gladkov
2009-04-14 15:08                                               ` Andrii Dobrovol`s`kii
2009-04-14 15:02                                             ` Damir Shayhutdinov
2009-04-14 15:16                                             ` Afanasov Dmitry
2009-04-14 18:20                                               ` Alexey Gladkov [this message]
2009-04-14 18:58                                                 ` [devel] gear-changelog Afanasov Dmitry
2009-04-14 19:00                                                   ` Mikhail Gusarov
2009-04-14 19:57                                                     ` Afanasov Dmitry
2009-04-14 20:18                                                       ` Alexey Gladkov
2009-04-14 20:22                                                         ` Afanasov Dmitry
2009-04-15  7:07                                                       ` Mikhail Gusarov
2009-04-15  8:55                                                         ` Afanasov Dmitry
2009-04-15  9:03                                                           ` Mikhail Gusarov
2009-04-15 22:31                                               ` [devel] gear-update работает отлично Evgeny Sinelnikov
2009-04-15 22:50                                                 ` Alexey Gladkov
2009-04-16  2:42                                                 ` Slava Semushin
2009-04-16  7:13                                                 ` Epiphanov Sergei
2009-04-16 10:14                                                 ` Andrii Dobrovol`s`kii
2009-04-16 10:17                                                 ` Andrii Dobrovol`s`kii
2009-04-16 10:27                                                   ` Anton Farygin
2009-04-16 11:03                                                     ` Andrii Dobrovol`s`kii
2009-04-16 11:27                                                       ` Anton Farygin
2009-04-16 12:10                                                     ` Vladimir Lettiev
2009-04-16 12:12                                                       ` Andrey Rahmatullin
2009-04-16 12:13                                                       ` Afanasov Dmitry
2009-04-16 12:14                                                         ` Andrey Rahmatullin
2009-04-16 12:18                                                         ` Anton Farygin
2009-04-16 12:13                                                       ` Anton Farygin
2009-04-16 11:05                                                   ` Damir Shayhutdinov
2009-04-14 12:52                                     ` Alexey Gladkov
2009-04-13 15:00                       ` [devel] Что делать с XFCE? Motsyo Gennadi aka Drool
2009-04-10 12:54     ` Alexey I. Froloff
2009-04-10 13:18     ` Alexey Shabalin
2009-04-10 13:36       ` Eugene Ostapets
2009-04-10 13:41         ` AShen
2009-04-10 15:01           ` Eugene Ostapets
2009-04-13  5:38             ` AShen
2009-04-11  4:04         ` Eugene Prokopiev
2009-04-11  6:13           ` Eugene Ostapets
2009-04-12 11:57             ` Eugene Prokopiev
2009-04-12 12:00               ` Eugene Ostapets
2009-04-12 13:00                   ` Mikhail Gusarov
2009-04-13  7:23           ` Андрей Черепанов
2009-04-13 15:22     ` Anton V. Boyarshinov

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=49E4D3EC.4020300@altlinux.ru \
    --to=legion@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