エイリアスを利用する
====================

エイリアスとは？
-----------------

エイリアスは良く入力するコマンド用のショートカットを作る
もしくはコマンド用のデフォルトを設定するための手軽な方法です。

エイリアスを定義する
---------------------

コマンドのエイリアスは ``bazaar.conf`` ファイルの ``[ALIASES]`` セクションで定義されます。
エイリアスはエイリアスの名前で始まり、等号(=)、コマンド列が続きます。
次のコードはALIASESセクションの例です::

    [ALIASES]
    recentlog=log -r-3..-1
    ll=log --line -r-10..-1
    commit=commit --strict
    diff=diff --diff-options -p

上記の例の説明は次のとおりです:

 * 最初のエイリアスは最新の3つのリビジョンに対するログを表示する新しい ``recentlog`` コマンドを作ります
 *  ``ll`` エイリアスは行形式で最新の10件のログエントリを表示します。
 *  ``commit`` エイリアスはツリーの中の新しいファイルが認知されない場合コミットを拒絶するデフォルトのcommitを設定します。
 *  ``diff`` エイリアスは -pオプションをdiffに追加します

定義したエイリアスを利用する
-----------------------------

上記で定義されたエイリアスは次のように使われます: ::

   % bzr recentlog
   % bzr ll
   % bzr commit
   % bzr diff

エイリアスのためのルール
-------------------------

 * コマンドライン上で新しいオプションを指定することでエイリアスに渡されるオプションの一部をオーバーライドできます。
   たとえば、 ``lastlog -r-5..`` を実行すると 10の代わりに行ベースのログエントリが5つだけ得られます。
   すべての論理値型のオプションは暗黙的に逆のオプションがあるので、 ``commit --no-strict`` でcommitのエイリアスをオーバーライドできます。

 * エイリアスの名前をオリジナルのコマンドと同じものにすることでエイリアスは既存のコマンドの標準のふるまいをオーバーライドできます。
   たとえば、デフォルトのコミットは ``commit=commit --strict`` で変更されます。

 * エイリアスは他のエイリアスを参照できません。言い換えると エイリアスの ``lastlog`` を作りそれを ``ll`` で参照しても動作しません。
   これは標準のコマンドをオーバーライドするエイリアスを含みます。

 * 　 ``--no-aliases`` オプションをbzrのコマンドに渡すと実行時にエイリアスは無視されます。
   たとえば、 ``bzr --no-aliases commit`` を実行すると ``commit --strict`` ではなく標準のcomitコマンドが実行されます。

