stcmd を使用して特定のリビジョンのファイルをチェックアウトすることは可能ですか?
特定のファイルのすべて (または一部) の履歴をチェックアウトしたい。
Is it possible to checkout file of a specific revision using stcmd?
次のように、ラベルを使用して特定のリビジョンをチェックアウトできます。
"C:\Program Files\Borland\StarTeam Cross-Platform Client 2005 R2\stcmd" co -p "user:pwd@host:port/MyProject/view_r1/" -is -eol on -o -rp "D:\LocalDir" -cfgl "LABELNAME"
そのラベルの特定のファイルの履歴は、によって取得されます
stcmd hist -p "user:pwd@host:port/MyProject/view_r1/" -cfgl "labelName" -is -rp "D:\LocalDir" FILENAME
stcmd.exe co には、バージョン番号を指定できる -vn フラグがあります。これは DotNotation ではなくバージョン番号であるため、1.15 はバージョン 16 になります。このコマンドは次のとおりです。
stcmd.exe co -vn 1 -fp . -p "user:password@server:port/ProjectName/ViewName/FolderPath" file.ext
現在のディレクトリにある file.ext の 1.0 を取得します。完全な履歴を取得したい場合は、stcmd hist の出力を解析して現在のリビジョン番号を調べるか、上記の stcmd co コマンドを実行して、バージョン番号を 1 から "file.ext: 「file.ext:checked out」の代わりに「skiped」(現在のバージョンの stcmd は、バージョン番号が大きすぎて有効でない場合でもエラーになりません)。呼び出しの間にローカル ファイルを削除するか、-o フラグを追加して上書きすることを忘れないでください。削除することをお勧めします - stcmd co と上書きに問題がありました。
これは、現在のブランチのファイルのバージョンを 1.0 に戻すだけであることに注意してください。他のブランチからファイルのバージョンを取得することはできません。したがって、現在のバージョンが 1.5.2.1 の場合、1.5.2.1、1.5.2.0、1.5、1.4、1.3、1.2、1.1、1.0 は取得できますが、1.5.1.0 は取得できません。