StarTeam - 使用stcmd的特定修订的签出文件

时间:2010-05-27 10:12:28

标签: starteam

是否可以使用stcmd结帐特定修订的文件?

我想查看特定文件的所有(或部分)历史记录。

2 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:3)

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:签出“(如果版本号太大而无效,则当前版本的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。