CVS のコマンドは、 ディレクトリを引数に取ったときに再帰的に動作します。 例えば、次のディレクトリ構造を考えます。
$HOME
|
+--tc
| |
+--CVS
| (internal CVS files)
+--Makefile
+--backend.c
+--driver.c
+--frontend.c
+--parser.c
+--man
| |
| +--CVS
| | (internal CVS files)
| +--tc.1
|
+--testing
|
+--CVS
| (internal CVS files)
+--testpgm.t
+--test2.t
現在のディレクトリが `tc' であれば、 以下が成立します:
tc 中の全てのファイルを最新にします。
引数を付けない update コマンドは、
現在のディレクトリ中の全てのファイルと、
サブディレクトリを最新にします。
update コマンドだけでなく、
他の全ての CVS コマンドでも同じです。
`-l' オプションを付けることによって、 CVS の再帰的な動作を抑止することができます。
$ cvs update -l # サブディレクトリのファイルは更新しない。