~bzr-pqm/bzr/bzr.dev

4634.99.1 by Naoki INADA
import doc-ja rev90
1
Filtered views
2
==============
3
4
Filtered view の紹介
5
--------------------------
6
7
Viewはtreeに対するマスクを提供し、ユーザーはtreeの一部分に集中できる\
8
ようになります。
9
このマスキングが役に立ついくつかの場面があります。たとえば、大きな\
10
プロジェクトの技術ライターやテスターはプロジェクトのうち一部のディレクトリ\
11
やファイルだけを扱います。
12
13
開発者は大規模な変更をviewを使っていくつかのコミットに分解したいと思う\
14
かもしれません。 ``shelve`` ``unshelve`` がいくつかの変更を後のコミットまで\
15
とっておくのに対して、viewは次のコミットに(何を含めないかではなく)何を\
16
含めるかを指定します。
17
18
viewを作った後は、ファイルリストをサポートするコマンド - status,
19
diff, commit, etc - に暗黙的に毎回そのファイルリストが渡されます。
20
それらのコマンドに明示的にファイルリストを渡すことも可能ですが、\
21
指名するファイルは現在のviewの中にないといけません。
22
対照的に、ツリーを対象とするコマンド - pull, merge, update, etc -
23
はviewが作られた後もツリー全体に対して操作しますが、現在のviewに\
24
関係するもののみを報告します。
25
どちらのケースでも、Bazaarはユーザーに毎回viewが使われていることを\
26
報告するので、操作や出力がマスクされていることが判ります。
27
28
.. 2aになったらこのnoteは要らない
29
.. Note: Bazaar's default format does not yet support filtered views. That
30
   is likely to change in the near future. To use filtered views in the
31
   meantime, you currently need to upgrade to ``development-wt6`` (or
32
   ``development-wt6-rich-root``) format first.
33
34
35
view を作る
36
---------------
37
38
次のように, ``view`` コマンドにファイルやディレクトリを指定することで\
39
viewを作ります::
40
41
  bzr view file1 file2 dir1 ...
42
43
出力は::
44
45
  Using 'my' view: file1, file2, dir1
46
47
48
現在のviewをリストする
49
------------------------
50
51
現在のviewを見るには、 ``view`` コマンドに引数をつけないで実行します::
52
53
  bzr view
54
55
もしviewが無ければ、 ``No current view.`` というメッセージが出力されるでしょう。
56
そうでなければ、現在のviewの名前と内容が次のように表示されます::
57
58
  'my' view is: a, b, c
59
60
61
viewを切り替える
62
-----------------------
63
64
ほとんどの場合、viewは「変更を選択するために作られて、\
65
変更がコミットされると削除される」という具合に短い期間で使われます。
66
それ以外の場合では、viewに名前をつけてそれを切り替えたい場合がある\
67
かもしれません。
68
69
名前つきviewを宣言してそれに切り替えるには::
70
71
    bzr view --name view-name file1 dir1 ...
72
73
たとえば::
74
75
  bzr view --name doc NEWS doc/
76
  Using doc view: NEWS, doc/
77
78
名前つきviewを見るには::
79
80
  bzr view --name view-name
81
82
名前つきviewに切り替えるには::
83
84
  bzr view --switch view-name
85
86
全ての名前つきviewの一覧を得るには::
87
88
  bzr view --all
89
90
91
一時的にviewを無効にする
92
----------------------------
93
94
現在のviewを削除せずに無効にしたい場合、 ``off`` という名前の仮想viewに\
95
切り替えることができます。これは、ツリー全体を一つか二つのコマンドで操作する\
96
必要があり(例: merge)、しかしその後に元のviewに戻りたい場合に便利です。
97
98
現在のviewを削除せずに無効にするには::
99
100
  bzr view --switch off
101
102
ツリー全体に対する操作が終わったら、元のviewの名前を指定して戻ることが\
103
できます。たとえば、デフォルトの名前が使われて他のであれば::
104
105
  bzr view --switch my
106
107
108
viewを削除する
109
--------------
110
111
現在のviewを削除するには::
112
113
  bzr view --delete
114
115
名前つきviewを削除するには::
116
117
  bzr view --name view-name --delete
118
119
全てのviewを削除するには::
120
121
  bzr view --delete --all
122
123
124
注意点
125
---------------------
126
127
view を定義しても作業ツリー内のほかのファイルを削除するわけでは\
128
ありません。単に作業ツリーに対する "レンズ" を提供するだけです。
129
130
view は作業ツリーのメタデータとして保存されます。pull, push, update
131
といったブランチコマンドを使っても他の作業ツリーに伝播しません。
132
133
view はファイルパスの形で定義されます。もしview内のファイルをview外に
134
移動したのであれば、view はそのファイルを追跡しません。
135
たとえば、viewが ``doc/`` と定義されていて ``doc/NEWS`` を ``NEWS``
136
に移動しても view は ``doc/`` に定義されたままで、 ``doc/`` と ``NEWS``
137
のように変更されたりはしません。同じように、view内のファイルを削除しても\
138
viewからはそのファイルパスは削除されません。
139
140
141
現在のviewを利用するコマンドは:
142
143
* status
144
* diff
145
* commit
146
* add
147
* remove
148
* revert
149
* mv
150
* ls
151
152
ツリー全体に対する操作だけれども現在のviewの中だけを報告するコマンドは:
153
154
* pull
155
* update
156
* merge.
157
158
現在のところ、多くのコマンドがviewを無視します。ニーズがある\
159
コマンドから徐々に上の対応リストに追加されていくでしょう。
160
いくつかのコマンドは全体図を見るのがより適しているために、\
161
viewを無視したままになるでしょう。このタイプのコマンドには\
162
次のものがあります:
163
164
* log
165
* info