Fix revlog-ng interaction with old-http.
revlog.py wasn't trying to detect the version of a revlog file that
doesn't exist on the filesystem (as is the case with old-http).
Additionally, there was an off-by-one error in httprangereader.read
(ranges in HTTP Range headers are inclusive), making it get more data
than what was asked for. This made a struct.unpack complain that
"unpack str size does not match format".
Finally, with the two fixes above, test-static-http fails, since
BaseHTTPServer doesn't understand ranges and returns too much data.
Work around that by reading only the specified amount.
HGRC(5)
=======
Bryan O'Sullivan <bos@serpentine.com>
名前
--
hgrc - Mercurial の設定ファイル
書式
--
Mercurial システムはその振舞いの正常を制御するのに、一連の設定ファ
イルを使用します。
ファイル
----
Mercurial は 3つのファイルから設定を読みます:
/etc/mercurial/hgrc::
このグローバルの設定ファイルのオプションは実行したユーザ、ディ
レクトリを問わず全ての Mercurial コマンドに適用されます。
$HOME/.hgrc::
ユーザ毎の設定オプションで、ディレクトリを問わず全ての
Mercurial コマンドに適用されます。このファイルの値はグローバル
の設定を上書きします。
<repo>/.hg/hgrc::
リポジトリ毎の設定オプションで、そのリポジトリのみに適用されま
す。このファイルはバージョン管理されず、 "clone" 操作で転送さ
れることもありません。このファイルの値はグローバルの設定とユー
ザ毎の設定を上書きします。
構文
--
設定ファイルは "[セクション]" ヘッダから始まるセクションと、それに
続く"名前: 値"のエントリから成ります: "名前=値"も認められます。
[spam]
eggs=ham
green=
eggs
各行は1つのエントリを含みます。もし次の行がインデントされていた場
合、それは前の行の続きとして扱われます。
先行する空白は値から取り除かれます。空行は読み飛ばされます。
オプションの値は同じセクションや、特別な DEFAULT セクションの別の
値を参照するフォーマット文字列を含むことができます。
"#" や ";" で始まる行は無視されるので、コメントとして使うことがで
きます。
セクション
-----
このセクションは Merucurial の "hgrc" に使うことができる異なったセ
クションのそれぞれの目的や可能なキー、そして取り得る値について記述
します。
decode/encode::
checkout/checkin でファイルを転送するときのフィルターです。これ
は典型的には改行を処理したり、他の地域化/標準化に使われるでしょ
う。
フィルターはフィルターパターンとそれに続くフィルターコマンドから
なります。コマンドは標準入力からのデータを受け付け、変換したデー
タを標準出力に返す必要があります。
例:
[encode]
# delta 圧縮を改善するためにチェックイン時に gzip ファイルを
# 伸長します
# 注意: 必ずしも良いアイディアではありません。ただの例です
*.gz = gunzip
[decode]
# 作業ディレクトリに書き出すときにファイルを gzip で再圧縮します
*.gz = gzip
hooks::
コミットの開始、終了時など様々なアクションで自動的に実行されるコ
マンドです。
changegroup;;
push や pull でチェンジグループが加えられたあとに起動します。
commit;;
チェンジセットが作成された後に起動します。新しく作成されたチェ
ンジセットの ID が渡されます。
precommit;;
コミット前に起動します。終了ステータス 0 によりコミットを続行
します。非ゼロのステータスでコミットは失敗します。
http_proxy::
HTTP プロキシを通してウェブを使った Mercurial のリポジトリにアク
セスするのに使われます。
host;;
プロキシサーバのホスト名と(オプションの)ポートで、例えば
"myproxy:8000"などです。
no;;
オプションです。コンマで区切られたプロキシを通過すべきホスト名
のリストです。
passwd;;
オプションです。プロキシサーバの認証用のパスワードです。
user;;
オプションです。プロキシサーバの認証用のユーザ名です。
paths::
リポジトリにシンボル名を割当てます。左側がシンボル名で、右側がリ
ポジトリの場所を示すディレクトリや URL です。
ui::
ユーザインターフェースの設定です。
debug;;
デバッグ情報を表示します。True か False を取ります。デフォルト
では False です。
editor;;
コミット中に使用するエディタです。デフォルトは $EDITOR か
"vi" です。
interactive;;
ユーザに対してプロンプトを出すようにします。True か False を取
ります。デフォルトでは True です。
merge;;
手動での merge 中に衝突を解決するために使われるプログラムです。
デフォルトは "hgmerge" です。
quiet;;
表示される出力の量を減らします。True か False を取ります。デフォ
ルトは False です。
remotecmd;;
clone/push/pull 操作で使われるリモートのコマンドです。デフォル
トは 'hg' です。
ssh;;
SSH 接続で使われるコマンドです。デフォルトは 'ssh' です。
username;;
コミットを実行したときに作成されるチェンジセットのコミッタです。
一般的には人名と電子メールアドレスで、例えば "Fred Widget
<fred@example.com>" などです。デフォルトは $EMAIL か
username@hostname です。
verbose;;
表示される出力の量を増やします。True か False を取ります。デフォ
ルトは False です。
web::
ウェブインターフェイスの設定です。
accesslog;;
アクセスログの出力先です。デフォルトでは標準出力です。
address;;
バインドするインターフェイスアドレスです。デフォルトでは全てで
す。
allowbz2;;
リポジトリのリビジョンから .tar.bz2 をダウンロードさせるかどう
かです。デフォルトでは false です。
allowgz;;
リポジトリのリビジョンから .tar.gz をダウンロードさせるかどう
かです。デフォルトでは false です。
allowpull;;
リポジトリから pull させるかどうかです。デフォルトでは true で
す。
allowzip;;
リポジトリのリビジョンから .zip をダウンロードさせるかどうかで
す。デフォルトでは false です。この機能は一時ファイルを作成し
ます。
description;;
リポジトリの目的や内容についてのテキストによる説明です。デフォ
ルトでは"unknown" です。
errorlog;;
エラーログの出力先です。デフォルトでは標準エラー出力です。
ipv6;;
IPv6 を使うかどうかです。デフォルトでは false です。
name;;
ウェブインターフェイスを使うときのリポジトリの名前です。デフォ
ルトは現在の作業ディレクトリです。
maxchanges;;
チェンジログに記載する変更の最大数です。デフォルトでは 10 です。
maxfiles;;
チェンジセットに記載するファイルの最大数です。デフォルトでは
10 です。
port;;
リスンするポートです。デフォルト は 8000 です。
style;;
使用するテンプレートマップのスタイルです。
templates;;
HTML テンプレートの在処です。デフォルトではインストールしたと
きのパスです。
著者
--
Bryan O'Sullivan <bos@serpentine.com>.
Mercurial は Matt Mackall <mpm@selenic.com> により書かれました。
関連項目
----
hg(1)
COPYING
-------
このマニュアルの著作権は 2005 Bryan O'Sullivan です。
Mercurial の著作権は 2005 Matt Mackall です。
このソフトウェアの自由な使用は GNU 一般公有使用許諾 (GPL) のもとで
認められます。