21

hg logコマンドを使用して一連のリビジョンxからyを表示しようとしています。

私がこれを行うとき:

hg log -r 1+5

私はこれを得る:

changeset:   1:7320d2a9baa5
user:        Tim Post <tpost@whereiwork.com>
date:        Fri Sep 30 20:38:29 2011 +0800
summary:     Foo foo everywhere is foo

changeset:   5:8d6bea76ce60
user:        Tim Post <tpost@whereiwork.com>
date:        Fri Sep 30 20:51:42 2011 +0800
summary:     Blah blah blah

これは、リビジョン 1から5 ではなく、リビジョン 15を見たいという Mercurial の理解です。

奇妙なことに、これは機能します:

hg log -r 1+2+3+4+5

しかし、これは非常に面倒です。特に、互いに +500 離れたリビジョン間で要約を取得しようとする場合はなおさらです。

シリーズのすべてのリビジョンを連結x する y代わりにx 連結せずにリビジョンのログを取得する方法はありますか?y

出力を使用して、特定のシリーズで各開発者が行ったコミットメントの数を判断しています。コマンドを使用してそれができない場合はhg、Mercurial API を使用することにオープンです。hgAPI を介してそれを行う明確な方法が見当たらなかったため、このコマンドに頼りました。

API とは、フックまたは拡張機能を介して Python を使用することを意味します。

4

1 に答える 1

27

hg log -r1:5

Mercurialには、(ログだけでなく)コマンドのリビジョンを選択するための完全なミニ言語があります。詳細については、hg help revsets(Mercurial 1.6以降が必要)を参照してください。

于 2011-10-17T10:08:31.523 に答える