8

多数のディレクトリ、サブディレクトリ、およびパスを含む従来の CVS リポジトリがあります。また、すべてのパスとファイル (通常はサブセット) を必ずしも網羅していない多数のブランチとタグもあります。どのブランチ/タグがカバーしているか、どのファイルとパスをカバーしているか、どうすればわかりますか?

CVS ログは、ファイルごとのタグのリストをすでに提供しています。このタスクでは、これをタグごとにファイルに変換する必要があります。現在の WinCVS (CVSNT) 実装では、そのような機能を見つけることができませんでした。十分な空のサイクルがあれば、それを実行する Perl スクリプトを作成できます。アルゴリズムは複雑ではありませんが、実行する必要があります。

そのような情報が必要で、この問題を解決した人がいると思います。したがって、これはすぐに利用できる (オープン ソース/無料) ツールであるべきだと思います。

4

6 に答える 6

11

ファイルのタグを一覧表示するには、次のこともできます。

cvs status -v <file>
于 2009-06-23T21:10:36.143 に答える
7

特定のファイルに適用されるタグを判別するには、次のようにします。

cvs log <filename>

これにより、ファイルのすべてのバージョンと、そのバージョンに適用されたタグが出力されます。

1 つのタグにどのファイルが含まれているかを判断するには、タグを使用してチェックアウトし、どのファイルが戻ってくるかを確認するしか考えられません。そのためのコマンドは次のいずれかです。

cvs update -r <tagname>
cvs co <modulename> -r <tagname>
cvs export <modulename> -r <tagname>
于 2008-08-29T18:27:33.553 に答える
4

上記の方法は私にはうまくいきませんでした

cvs -q rdiff -s -D 2000-01-01 -r yourTagName

しかし、いろいろいじった後、私はそれに気づきました

cvs -q rdiff -s -D 2000-01-01 -r yourTagName ModuleName

作品

于 2010-11-08T19:01:28.430 に答える
3

実際のチェックアウトを行う必要はありません。-n オプションを使用すると、これのみをシミュレートできます。

cvs -n co -rTagName ModuleName

これにより、モジュール ModuleName 内の TagName とタグ付けされたすべてのファイルの名前が得られます。

于 2008-11-06T09:53:32.380 に答える
1

次のコマンドは、そのタグ「yourTagName」にあるファイルのリストを表示します。ファイルはすべて新規としてマークされ、リビジョン情報は「yourTagName」にあります。

このコマンドは、2000-01-01 とタグの差分を作成します。それ以前の別の日付を自由に使用してください。

cvs -q rdiff -s -D 2000-01-01 -r yourTagName
于 2009-06-23T21:00:34.997 に答える
0

あなたに役立つツールを私は知りませんが、もしあなたが独自のツールを作成しているなら、私はあなたを 1 つの頭の痛い問題から救うことができます: CVS のディレクトリは tagget にすることはできません。その中のファイルだけがタグを持っています (そして、特定のタグでディレクトリをチェックアウトするときにチェックアウトされるものを決定します)。

于 2008-08-26T18:59:22.330 に答える