CVS に存在するブランチを識別するにはどうすればいいですか? 質問する

CVS に存在するブランチを識別するにはどうすればいいですか? 質問する

Perforce に移行する予定のレガシー CVS リポジトリがあります。

各モジュールについて、そのモジュールに存在するブランチを特定する必要があります。

必要なのはブランチ名のリストだけで、タグは不要です。スクリプト作成上の理由から、コマンド ライン ツールである必要があります。

たとえば (cvs-list-branches.sh スクリプトがあると仮定) :

$ ./cvs-list-branches.sh module1
HEAD
dev_foobar
Release_1_2
Release_1_3
$

ベストアンサー1

簡単なハックとして:) rlog についても同様です。

cvs log -h | awk -F"[.:]" '/^\t/&&$(NF-1)==0{print $1}' | sort -u

改良版ベデベイ関係のない出力を非表示にして、結果を左揃えにします。

cvs log -h 2>&1 | awk -F"[.:]" '/^\t/&&$(NF-1)==0{print $1}' | awk '{print $1}' | sort -u

おすすめ記事