.hg/localtagsがあると遅い

閲覧: 248 回
最初の未読メッセージにスキップ

KOIE Hidetaka

未読、
2010/03/24 4:31:102010/03/24
To: mercur...@googlegroups.com
FreeBSDのsubversionリポジトリをhg convertで
hgリポジトリに変換して参照しているのですが、
subversionのリビジョン番号で参照できないと不便なため
hg convertがつくる .hg/shamap を元に .hg/localtags をつくって
こんな感じのエントリ
16e598e2fcffce96abe6df651c80b93a314dda7c r1
をスクリプトで生成しています。

現在localtagsは15万行ほどあるのですが、
localtagsがあるととても遅くなります。
________________________________________
| koie@guriandgura[hg:head]% wc .hg/localtags
| 151795 303590 7351293 .hg/localtags
| koie@guriandgura[hg:head]% time hg log -l1
| changeset: 151794:c6ddaea70324
| branch: head
| tag: tip
| tag: r205578
| user: maxim
| date: Wed Mar 24 06:08:51 2010 +0000
| summary: o FreeBSD 7.3 added.
|
| 8.197u 0.358s 0:08.57 99.6% 1332+2942k 0+0io 0pf+0w ←←← ありだと8秒以上かかる
| koie@guriandgura[hg:head]% time hg log -l1
| changeset: 151794:c6ddaea70324
| branch: head
| tag: tip
| tag: r205578
| user: maxim
| date: Wed Mar 24 06:08:51 2010 +0000
| summary: o FreeBSD 7.3 added.
|
| 8.170u 0.342s 0:08.54 99.6% 1330+2939k 0+0io 0pf+0w
| koie@guriandgura[hg:head]% mv .hg/localtags .hg/localtags.koie
| koie@guriandgura[hg:head]% time hg log -l1
| changeset: 151794:c6ddaea70324
| branch: head
| tag: tip
| user: maxim
| date: Wed Mar 24 06:08:51 2010 +0000
| summary: o FreeBSD 7.3 added.
|
| 0.374u 0.129s 0:00.54 90.7% 1480+3078k 0+0io 0pf+0w ←←← なしなら1秒未満で終わる
| koie@guriandgura[hg:head]% time hg log -l1
| changeset: 151794:c6ddaea70324
| branch: head
| tag: tip
| user: maxim
| date: Wed Mar 24 06:08:51 2010 +0000
| summary: o FreeBSD 7.3 added.
|
| 0.373u 0.129s 0:00.54 90.7% 1480+3078k 0+0io 0pf+0w
|________________________________________


--
鯉江英隆 <hi...@koie.org>

Shun-ichi Goto

未読、
2010/03/24 6:51:302010/03/24
To: mercur...@googlegroups.com
2010年3月24日17:31 KOIE Hidetaka <hi...@koie.org>:
> FreeBSDのsubversionリポジトリをhg convertで
> hgリポジトリに変換して参照しているのですが、

追っかけなら hgsubversioin の方が向いてるかもしれません。
ローカルコミットもできるし。

> subversionのリビジョン番号で参照できないと不便なため
> hg convertがつくる .hg/shamap を元に .hg/localtags をつくって
> こんな感じのエントリ
> 16e598e2fcffce96abe6df651c80b93a314dda7c r1
> をスクリプトで生成しています。
> 現在localtagsは15万行ほどあるのですが、
> localtagsがあるととても遅くなります。

この件は hgsubversion でも解決はできませんが、
parent の svn info くらいは hg svn infoで取得できます。

それにしても15万もあると、タグとしては現実的ではないですよね。
本当に必要なタグが埋もれちゃうし。hg tags とかしたら大変。
tagが多いと遅い件はissue 557 (resolved)あたりでしょうか。
http://mercurial.selenic.com/bts/issue557
タグキャッシュにより5000とか位のタグはなんともなさそうですが。

localtagsを作る方向より、hg と svn のrev対応を表示するコマンドを
作った方が、使用頻度と速度のトレードオフの点で良いのではないでしょうか。
hg log の表示の中に現れて欲しいというのであれば叶いませんが。

--
Shun-ichi GOTO

Yuya Nishihara

未読、
2010/03/24 8:16:212010/03/24
To: mercur...@googlegroups.com
こんばんは。

Shun-ichi Goto wrote:
> 2010年3月24日17:31 KOIE Hidetaka <hi...@koie.org>:
> > FreeBSDのsubversionリポジトリをhg convertで
> > hgリポジトリに変換して参照しているのですが、
>
> 追っかけなら hgsubversioin の方が向いてるかもしれません。
> ローカルコミットもできるし。
>
> > subversionのリビジョン番号で参照できないと不便なため
> > hg convertがつくる .hg/shamap を元に .hg/localtags をつくって
> > こんな感じのエントリ
> > 16e598e2fcffce96abe6df651c80b93a314dda7c r1
> > をスクリプトで生成しています。
> > 現在localtagsは15万行ほどあるのですが、
> > localtagsがあるととても遅くなります。
>
> この件は hgsubversion でも解決はできませんが、
> parent の svn info くらいは hg svn infoで取得できます。

templatekw.py を眺めると {extras} というのがありました。

ちょっと見にくいですけど、これでどうでしょう?

% hg log --template '{node|short}: {extras}\n'
795c5c533014: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3608
fcac92650add: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3607
615ad8b574b8: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3606

プラグインで実装できそうな気がしてきた…。

Yuya,

Yuki KODAMA

未読、
2010/03/24 9:09:212010/03/24
To: mercur...@googlegroups.com
2010/3/24 Yuya Nishihara <you...@gmail.com>:

TortoiseHgではまさにそのextraを参照してsvnのリビジョン(とブランチ名)を表示しています。

--
Yuki KODAMA

Shun-ichi Goto

未読、
2010/03/24 9:19:052010/03/24
To: mercur...@googlegroups.com
2010年3月24日21:16 Yuya Nishihara <you...@gmail.com>:

> templatekw.py を眺めると {extras} というのがありました。
>
> ちょっと見にくいですけど、これでどうでしょう?
>
> % hg log --template '{node|short}: {extras}\n'
> 795c5c533014: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3608
> fcac92650add: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3607
> 615ad8b574b8: branch=defaultconvert_revision=svn:e93f8b46-1217-0410-a6f0-8f06a7374b81/trunk@3606
>
> プラグインで実装できそうな気がしてきた…。

それなら~/.hgrcでのalias機能で十分かも

[alias]
svnlog = log --template '{rev}:{node|short}: {extras}\n'

--
Shun-ichi GOTO

Shun-ichi Goto

未読、
2010/03/24 9:22:482010/03/24
To: mercur...@googlegroups.com
2010年3月24日22:09 Yuki KODAMA <yuki....@gmail.com>:
>> プラグインで実装できそうな気がしてきた…。
>
> TortoiseHgではまさにそのextraを参照してsvnのリビジョン(とブランチ名)を表示しています。

知らなかった。hgsubversion 多用してるので、
thg と template + aliasで自分にも幸せやってきた。

--
Shun-ichi GOTO

Yuki KODAMA

未読、
2010/03/24 9:49:572010/03/24
To: mercur...@googlegroups.com
2010/3/24 Shun-ichi Goto <shunic...@gmail.com>:

TortoiseHg 1.0 では extras に保存された svn リビジョンのフォーマットによって
表示がおかしくなる問題がありますが、TortoiseHg 1.0.1 で改善されます。

Perforce リポジトリから変換したチェンジセットについても同様に
元リビジョン情報がある場合はそれが表示されます。

--
Yuki KODAMA

Yuya Nishihara

未読、
2010/03/24 9:58:572010/03/24
To: mercur...@googlegroups.com
西原です。

Yuki KODAMA wrote:
> TortoiseHgではまさにそのextraを参照してsvnのリビジョン(とブランチ名)を表示しています。

うわっ、知らなかった。
もう Subversion クライアントなんかいらないなぁ。

Shun-ichi Goto wrote:
> > プラグインで実装できそうな気がしてきた…。
>
> それなら~/.hgrcでのalias機能で十分かも
>
> [alias]
> svnlog = log --template '{rev}:{node|short}: {extras}\n'

{svnrev} みたいなキーワードを hgsubversion が追加してくれたら
いいな、と。息抜きに書けそうだし。

Yuya,

Yuki KODAMA

未読、
2010/03/24 14:32:162010/03/24
To: mercur...@googlegroups.com
2010/3/24 Yuya Nishihara <you...@gmail.com>:

> 西原です。
>
> Yuki KODAMA wrote:
>> TortoiseHgではまさにそのextraを参照してsvnのリビジョン(とブランチ名)を表示しています。
>
> うわっ、知らなかった。
> もう Subversion クライアントなんかいらないなぁ。

ちょっとソースコードをチェックアウトしてみよう、くらいであれば
hgsubversion経由で十分ですよね。ちょうど記事書きました(ってほどのものでもない):
TortoiseHgでSVNリポジトリをチェックアウトできちゃった件: http://blog.endflow.net/?p=298

> Shun-ichi Goto wrote:
>> > プラグインで実装できそうな気がしてきた…。
>>
>> それなら~/.hgrcでのalias機能で十分かも
>>
>> [alias]
>> svnlog = log --template '{rev}:{node|short}: {extras}\n'
>
> {svnrev} みたいなキーワードを hgsubversion が追加してくれたら
> いいな、と。息抜きに書けそうだし。
>
> Yuya,
>

> --
> from Mercurial 日本語コミュニティ <mercur...@googlegroups.com>
> ※ ヘルプ表示は http://groups.google.com/group/mercurial-ja?hl=ja
>
> To unsubscribe from this group, send email to mercurial-ja+unsubscribegooglegroups.com or reply to this email with the words "REMOVE ME" as the subject.
>

--
Yuki KODAMA

KOIE Hidetaka

未読、
2010/03/24 20:33:552010/03/24
To: mercur...@googlegroups.com
みなさん、アドバイスありがとうございます。
hgsubversionをためしてみました。

動作確認でREADMEにあるこれ↓
hg clone svn+http://python-nose.googlecode.com/svn nose-hg
は動いているようなのですが、
FreeBSDで試してみると途中で止まってしまいます。
また止まるところは毎回変わります。
________________________________________
|1回目
| koie@guriandgura% time hg clone svn://svn.freebsd.org/base/head freebsd-head-hg
| [r1] cvs2svn: Standard project directories initialized by cvs2svn.
| [r3] rgrimes: This commit was generated by cvs2svn to compensate for changes in r2,
| …
| [r99] nate: Really fixed the obj/noobj problems in CVS, and also made it so a
| 中止: None
| 5.172u 1.318s 2:04.19 5.2% 1839+4034k 0+0io 1pf+0w
|
|2回目
| koie@guriandgura% time hg clone svn://svn.freebsd.org/base/head freebsd-head-hg
| [r1] cvs2svn: Standard project directories initialized by cvs2svn.
| [r3] rgrimes: This commit was generated by cvs2svn to compensate for changes in r2,
| …
| [r147] rgrimes: Brought in NetBSD Makefile, which was then fixed up to use mtree for
| 中止: None
| 6.258u 1.456s 2:58.08 4.3% 1921+4218k 0+0io 0pf+0w
|
|3回目
| koie@guriandgura% time hg clone svn://svn.freebsd.org/base/head freebsd-head-hg
| [r1] cvs2svn: Standard project directories initialized by cvs2svn.
| [r3] rgrimes: This commit was generated by cvs2svn to compensate for changes in r2,
| …
| [r177] nate: One last thing for making sure it works.
| 中止: None
| 7.012u 1.506s 3:37.49 3.9% 2002+4397k 0+0io 0pf+0w
| koie@guriandgura% ls -a
| ./ ../
| koie@guriandgura%
|________________________________________

Message-Id: <2288dbd91003240351g56...@mail.gmail...
Date: Wed, 24 Mar 2010 19:51:30 +0900
From: Shun-ichi Goto <shunic...@gmail.com>
Subject: Re: [mercurial-ja:427] .hg/localtagsがあると遅い

| localtagsを作る方向より、hg と svn のrev対応を表示するコマンドを
| 作った方が、使用頻度と速度のトレードオフの点で良いのではないでしょうか。
| hg log の表示の中に現れて欲しいというのであれば叶いませんが。

どちらかというと -r でリビジョンを指定するときに
subversionのリビジョンをつかいたいです。

--
鯉江英隆 <hi...@koie.org>

Shun-ichi Goto

未読、
2010/03/25 3:30:362010/03/25
To: mercur...@googlegroups.com
2010年3月25日9:33 KOIE Hidetaka <hi...@koie.org>:
> FreeBSDで試してみると途中で止まってしまいます。
> また止まるところは毎回変わります。

ほんとだ。しかもエラーメッセージ無し。

--traceback をつけて場所を特定してみると、エラー 210002
(SVN_ERR_RA_SVN_CONNECTION) が発生してるようです。アクセスの度に
ra.open2() を実行してるようなので、大量のCLOSE_WAITなセッションが残って
ます(tcpviewで見た)ので、それが原因ではないかと思う。

試しに以下の修正でセッションの再利用をさせてみると結構順調に行くみたい
で、hg clone svn://svn.freebsd.org/base/head freebsd-head-hg は順調に進
行したんだけど、rev2491での com4.c という名前に引っかかって中断。
# Windows だったので "COMx"というファイル名は作れないため

--- a/hgsubversion/svnwrap/svn_swig_wrapper.py Thu Mar 25 14:47:16 2010 +0900
+++ b/hgsubversion/svnwrap/svn_swig_wrapper.py Thu Mar 25 16:14:41 2010 +0900
@@ -196,6 +196,7 @@
self.auth_baton = _create_auth_baton(self.auth_baton_pool)
# self.init_ra_and_client() assumes that a pool already exists
self.pool = core.Pool()
+ self.ra = None

self.init_ra_and_client()
self.uuid = ra.get_uuid(self.ra, self.pool)
@@ -211,6 +212,8 @@
unified diffs runs the remote server out of open files.
"""
# while we're in here we'll recreate our pool
+ if self.ra:
+ return
self.pool = core.Pool()
if self.username:
core.svn_auth_set_parameter(self.auth_baton,

でもなんで SubverseionRepo.init_ra_and_client() がこんな作りになってる
のかは不明。あとでBTSに報告してみます。

ちなみにスピードも若干早くなってるかと思う。freebsdの clone をしてる脇
で件の nose のリポジトリを clone すると586revを486sで完了

--
Shun-ichi GOTO

Shun-ichi Goto

未読、
2010/03/25 5:55:182010/03/25
To: mercur...@googlegroups.com
2010年3月25日16:30 Shun-ichi Goto <shunic...@gmail.com>:

> 試しに以下の修正でセッションの再利用をさせてみると結構順調に行くみたい
> で、hg clone svn://svn.freebsd.org/base/head freebsd-head-hg は順調に進
> 行したんだけど、rev2491での com4.c という名前に引っかかって中断。
> # Windows だったので "COMx"というファイル名は作れないため

改めて linux上でトライしてみたところ、75分たった時点で r5500位まで
進んで、いまも進行中。1000 revs / 15min. ってペースですね。
最後のrev が20万くらいとすると、完了するまでにには 50時間かかる
計算なので途中でやめるかもしれなません。途中経過報告ということで。

# start rev 指定の実装が待たれるところ。
--
Shun-ichi GOTO

KOIE Hidetaka

未読、
2010/03/25 8:05:552010/03/25
To: mercur...@googlegroups.com
Message-Id: <2288dbd91003250255r7b5...@mail.gmail..
Date: Thu, 25 Mar 2010 18:55:18 +0900
From: Shun-ichi Goto <shunic...@gmail.com>
Subject: Re: [mercurial-ja:437] .hg/localtagsがあると遅い

| 2010年3月25日16:30 Shun-ichi Goto <shunic...@gmail.com>:
|

| 改めて linux上でトライしてみたところ、75分たった時点で r5500位まで
| 進んで、いまも進行中。1000 revs / 15min. ってペースですね。
| 最後のrev が20万くらいとすると、完了するまでにには 50時間かかる
| 計算なので途中でやめるかもしれなません。途中経過報告ということで。
|
| # start rev 指定の実装が待たれるところ。

わたしもGotoさんのパッチを当てて走らせています。
時間がかかるのはしかたがないとしてやはりメモリはたっぷり消費しますね。
現在、r30000を過ぎたところで、プロセスサイズが2GB、常駐サイズが1.5GBです。

以前にhg convertで変換したときも終わるまでに2日以上かかって、
そのときのメモをみると、プロセスサイズが17GBで、常駐サイズが7GBでした。

--
鯉江英隆 <hi...@koie.org>

Shun-ichi Goto

未読、
2010/03/25 9:46:482010/03/25
To: mercur...@googlegroups.com
2010年3月25日21:05 KOIE Hidetaka <hi...@koie.org>:

> 時間がかかるのはしかたがないとしてやはりメモリはたっぷり消費しますね。
> 現在、r30000を過ぎたところで、プロセスサイズが2GB、常駐サイズが1.5GBです。
>
> 以前にhg convertで変換したときも終わるまでに2日以上かかって、
> そのときのメモをみると、プロセスサイズが17GBで、常駐サイズが7GBでした。

python swig bindingは以前からleakが度々報告されてますし、いまも残ってるのかも。
clone で失敗して、すべて台無しになってしまうのを避ける方法として、
mkdir foo
cd foo
hg init
hg pull <svn-url>
と実行して、失敗したら pull を繰り返す、という方法があるようです。

durin42 / hgsubversion / issues / #110 - Memory leak ― bitbucket.org
http://www.bitbucket.org/durin42/hgsubversion/issue/110/memory-leak

--
Shun-ichi GOTO

KOIE Hidetaka

未読、
2010/03/26 1:05:012010/03/26
To: mercur...@googlegroups.com
Message-Id: <2288dbd91003250646v63f...@mail.gmail..
Date: Thu, 25 Mar 2010 22:46:48 +0900
From: Shun-ichi Goto <shunic...@gmail.com>
Subject: Re: [mercurial-ja:439] .hg/localtagsがあると遅い

| 2010年3月25日21:05 KOIE Hidetaka <hi...@koie.org>:
| > 時間がかかるのはしかたがないとしてやはりメモリはたっぷり消費しますね。
| > 現在、r30000を過ぎたところで、プロセスサイズが2GB、常駐サイズが1.5GBです。
| >
| > 以前にhg convertで変換したときも終わるまでに2日以上かかって、
| > そのときのメモをみると、プロセスサイズが17GBで、常駐サイズが7GBでした。
|
| python swig bindingは以前からleakが度々報告されてますし、いまも残ってるのかも。
| clone で失敗して、すべて台無しになってしまうのを避ける方法として、
| mkdir foo
| cd foo
| hg init
| hg pull <svn-url>
| と実行して、失敗したら pull を繰り返す、という方法があるようです。

いまr100000を過ぎたところでサイズ7GB/常駐5GBです。
リポジトリは
% hg svnlog -l1
85904:75c03a0770e6: branch=defaultconvert_revision=svn:ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f/head@111918
となっているので、
もし途中で止まってしまったらpullすれば続きからやってくれるんですよね。

そういえば、namazuというperlで書かれた全文検索のインデクサは
定期的にexecしなおしてプロセスサイズが肥大するのを抑えていたのを思いだしました。

--
鯉江英隆 <hi...@koie.org>

Shun-ichi Goto

未読、
2010/03/26 1:16:202010/03/26
To: mercur...@googlegroups.com
2010年3月26日14:05 KOIE Hidetaka <hi...@koie.org>:
> いまr100000を過ぎたところでサイズ7GB/常駐5GBです。

おぉぉ

> リポジトリは
> % hg svnlog -l1
> 85904:75c03a0770e6: branch=defaultconvert_revision=svn:ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f/head@111918
> となっているので、
> もし途中で止まってしまったらpullすれば続きからやってくれるんですよね。

自分のところではずっと動かしていた hg clone を CTRL-Cで中断してみたところ
その時点でのrevまでは取り込まれていました。その時点でのsvnrevは r41524でした
そのうえで pull すると続き(r41525)から転送が行われ、さらにそれを中断しても
追加でpullした分は取り込まれていました。

ただ、パッチ前の時のエラーでは、まるまる失われてしまってましたので、
ある時点で明示的にCTRL-Cで中断してしまった方が確実かも。
ちょっと勇気がいりますけど、少なくとも自分は大丈夫でした。
ちなみにr41524でCTRL-Cした時は、リポジトリの後始末などの処理も含め、
プロンプトに帰ってくるまでに結構時間がかかりました。

--
Shun-ichi GOTO

KOIE Hidetaka

未読、
2010/03/27 8:37:182010/03/27
To: mercur...@googlegroups.com
無事 hgsubversion は終了しました。
サイズは13GBで常駐は6GBでした。

hgsubversionの最後の出力:
________________________________________
| [r205630] imp: This broke when we went to gnu99 as the default standard. Fix th[r205631] luigi: fix another bug in "ipfw set N ..."
| pulled 151811 revisions
| ブランチ default へ更新中
| ファイル状態: 更新数 42172、マージ数 0、削除数 0、衝突未解決数 0
| 149982.797u 8094.207s 51:01:06.28 86.0% 1329+2946k 0+0io 52376pf+0w
|________________________________________

その後のhg pullもすんなり動きました。
________________________________________
| koie@guriandgura[hg:]% time hg pull
| svn://svn.freebsd.org/base/head から取り込み中
| [r205636] glebius: Remove disabled code. In 99% cases exports are send to ng_ksocket(4), which
| …
| [r205728] kaiw: Merge improvements from kernel HID parser to the userland usbhid(3)
| pulled 46 revisions
| (作業領域の更新は 'hg update')
| 62.985u 6.023s 1:19.40 86.9% 1329+2940k 0+0io 156pf+0w
|________________________________________

一度リポジトリができてしまえばこっちのものなので
これで追い掛けしてみます。

--
鯉江英隆 <hi...@koie.org>

monjudoh

未読、
2010/03/28 23:22:412010/03/28
To: mercurial-ja
> サイズは13GBで常駐は6GBでした。
hgsubversionでhg clone,hg pullする時はsvnリポジトリの方のリビジョン番号を
-r後に指定できるので、最初の方だけhg clone,後は小分けにhg pullすると
メモリ使用量があまり増えなくていいですよ。

> 鯉江英隆 <h...@koie.org>

KOIE Hidetaka

未読、
2010/03/29 2:07:442010/03/29
To: mercur...@googlegroups.com
Message-Id: <24873585-bd88-4953...@t9g2000prh.googleg..
Date: Sun, 28 Mar 2010 20:22:41 -0700 (PDT)
From: monjudoh <monj...@gmail.com>
Subject: [mercurial-ja:447] Re: .hg/localtagsがあると遅い

| > サイズは13GBで常駐は6GBでした。
| hgsubversionでhg clone,hg pullする時はsvnリポジトリの方のリビジョン番号を
| -r後に指定できるので、最初の方だけhg clone,後は小分けにhg pullすると
| メモリ使用量があまり増えなくていいですよ。

ヘルプでは -r は Mercurial revision だとでます。
ためしに試してみたのですがエラーになってしまいました。
________________________________________
| koie@guriandgura[hg:]% tail -1 .hg/svn/rev_map
| 205728 409e7ecdefdaac7db2cf6e1bd00739e1ed0e602f
| koie@guriandgura[hg:]% hg svn -h
| hg svn ...
|
| subcommands for Subversion integration
|
| list of subcommands:
|
| genignore generate .hgignore from svn:ignore properties.
| help show help for a given subcommands or a help overview
| info show Subversion details similar to `svn info'
| listauthors list all authors in a Subversion repository
| rebuildmeta rebuild hgsubversion metadata using values stored in revisions
| update update to a specified Subversion revision number
| updateexternals update repository externals
| verify verify current revision against Subversion repository
|
|
| see detailed help for list of subcommands
|
| オプション:
|
| -u --svn-url path to the Subversion server.
| --stupid be stupid and use diffy replay.
| -A --authors username mapping filename
| --filemap remap file to exclude paths or include only certain paths
| --force force an operation to happen
| --username username for authentication
| --password password for authentication
| -r --rev Mercurial revision
|
| グローバルオプションは "hg -v help svn" で表示されます
| koie@guriandgura[hg:]% hg pull -r205728
| svn://svn.freebsd.org/base/head から取り込み中
| 差分はありません
| 中止: 00changelog.i@205728: ノードがありません!
| koie@guriandgura[hg:]%
| koie@guriandgura[hg:]% hg pull -rr205728
| svn://svn.freebsd.org/base/head から取り込み中
| 筝㊥②: unrecognised Subversion revision r205728: only numbers work. ←←←なぜか文字化け
| koie@guriandgura[hg:]% env LANG=C hg pull -rr205728
| pulling from svn://svn.freebsd.org/base/head
| abort: unrecognised Subversion revision r205728: only numbers work.
| koie@guriandgura[hg:]% env LANG=C hg pull
| pulling from svn://svn.freebsd.org/base/head
| [r205729] antoine: (S)LIST_HEAD_INITIALIZER takes a (S)LIST_HEAD as an argument.[r205734] mav: Fix lock leakage.
| ...
| [r205809] fabient: Wait for pmc name in the log before displaying data.
| pulled 19 revisions
| (run 'hg update' to get a working copy)
| koie@guriandgura[hg:]%
|________________________________________

--
鯉江英隆 <hi...@koie.org>

monjudoh

未読、
2010/03/29 4:55:472010/03/29
To: mercurial-ja
hg clone -r あまり大きくないリビジョン番号 svnリポジトリURL

hg clone svnリポジトリURL
と同じようにclone出来ませんか?


On 3月29日, 午後3:07, KOIE Hidetaka (鯉江英隆) <h...@koie.org> wrote:
> Message-Id: <24873585-bd88-4953-9adf-83a4f8cf2...@t9g2000prh.googleg..


> Date: Sun, 28 Mar 2010 20:22:41 -0700 (PDT)

> From: monjudoh <monju...@gmail.com>

> 鯉江英隆 <h...@koie.org>

KOIE Hidetaka

未読、
2010/03/29 13:06:312010/03/29
To: mercur...@googlegroups.com
Message-Id: <60ab57e7-7d42-4045...@f12g2000prn.google..
Date: Mon, 29 Mar 2010 01:55:47 -0700 (PDT)
From: monjudoh <monj...@gmail.com>
Subject: [mercurial-ja:449] Re: .hg/localtagsがあると遅い

| hg clone -r あまり大きくないリビジョン番号 svnリポジトリURL
| で
| hg clone svnリポジトリURL
| と同じようにclone出来ませんか?

やっとおっしゃる意味を理解しました。
-rで上限を設定できるので
細切れでpullすればメモリリークしていても問題を隠せるってことなんですね。
________________________________________
|
| koie@guriandgura% hg clone -r5 svn://svn.freebsd.org/base/head test2


| [r1] cvs2svn: Standard project directories initialized by cvs2svn.
| [r3] rgrimes: This commit was generated by cvs2svn to compensate for changes in r2,

| [r4] rgrimes: Initial import, 0.1 + pk 0.2.4-B1
| [r5] rgrimes: This commit was generated by cvs2svn to compensate for changes in r4,
| pulled 3 revisions
| ブランチ default へ更新中
| ファイル状態: 更新数 397、マージ数 0、削除数 0、衝突未解決数 0
| koie@guriandgura% ls
| test/ test2/
| koie@guriandgura% hg log test2
| チェンジセット: 2:d6bbdc4d8301
| タグ: tip
| ユーザ: rgrimes@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
| 日付: Sat Jun 12 14:58:17 1993 +0000
| 要約: This commit was generated by cvs2svn to compensate for changes in r4,
|
| チェンジセット: 1:71ea77575006
| ユーザ: rgrimes@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
| 日付: Sat Jun 12 14:58:17 1993 +0000
| 要約: Initial import, 0.1 + pk 0.2.4-B1
|
| チェンジセット: 0:6d11119de1ac
| ユーザ: rgrimes@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
| 日付: Sat Jun 12 14:49:13 1993 +0000
| 要約: This commit was generated by cvs2svn to compensate for changes in r2,
|
| koie@guriandgura%
|________________________________________

ちなみにsvn r1相当のものがhgにないのは
r1にファイルが1つもないからのようです。

--
鯉江英隆 <hi...@koie.org>

Yuya Nishihara

未読、
2011/01/10 10:48:492011/01/10
To: mercur...@googlegroups.com
西原です。こんばんは。

> Shun-ichi Goto wrote:
> > > プラグインで実装できそうな気がしてきた…。
> >
> > それなら~/.hgrcでのalias機能で十分かも
> >
> > [alias]
> > svnlog = log --template '{rev}:{node|short}: {extras}\n'
>
> {svnrev} みたいなキーワードを hgsubversion が追加してくれたら
> いいな、と。息抜きに書けそうだし。

最近の hgsubversion には {svnrev} があります。
私は style にして使ってます:
https://bitbucket.org/yuja/dotfiles/src/2a4c9065105f/dot.hgstyle/colompact-svn

さらに、 -r 'svnrev(サブバージョンのリビジョン)' という表記が使えます!
知らんかった。

亀レスですが、それでは。

全員に返信
投稿者に返信
転送
新着メール 0 件