TFS回滚重命名文件,无需手动干预即可重命名(TFVC)

时间:2019-06-13 21:39:15

标签: tfs visual-studio-2017 tfvc

在TFS 2012(TFVC)中,如何将重命名的文件回滚到原始文件名和内容-无需手动重命名文件(?)

试图看看是否仅使用TFS回滚功能(例如tf rollback),而不是tf命令或脚本解决方案的组合。

情况

四个步骤:1)添加一个文件; 2)签入; 3)重命名文件并编辑内容;和4)签入:

Changeset: 2
Items:
rename, edit $/b.txt

Changeset: 2
Items:
delete, source rename $/a.txt

Changeset: 1
Items:
add $/a.txt

我想回滚到变更集1(a.txt)。

我尝试过的内容

源代码管理资源管理器回滚:

在Microsoft Visual Studio 2017 Professional的源代码管理资源管理器中:右键单击b.txt>回滚...>回滚到特定版本。指定“变更集1”,然后选择“回滚”按钮。

这将产生以下未决更改:

Items:
delete, rollback $/b.txt

此外,“输出”窗口中还会显示一条警告:

  

TF203066:从$ / a.txt重命名为$ / b.txt的重命名无法回滚   因为您没有提供源名称。要回退重命名,   撤消对$ / b.txt的所有待定更改,然后重复该操作,   但这一次包括源名称($ / a.txt)和目标名称   ($ / b.txt)。

注意:“回滚到特定版本”似乎没有用于源名称和目标名称的字段。

这似乎表明回滚不支持这种情况(?)

tf.exe回滚:

命令tf rollback似乎也没有用于源名称和目标名称的参数:

  

tf回滚/ toversion:VersionSpec ItemSpec [/递归]   [/ lock:none | checkin | checkout] [/ version:versionspec]   [/ keepmergehistory] ​​[/ login:用户名,[密码]] [/ noprompt]

运行以下命令时,得到的结果与Visual Studio中的结果相同:

C:\test>tf vc rollback /toversion:C1 "$/b.txt" 
delete, rollback:

$/b.txt;C2~C2 -> $/b.txt;C2  

以及与之前相同的警告:

  

TF203066:从$ / a.txt重命名为   $ / b.txt无法回滚,因为您没有提供   源名称。要回滚重命名,请撤消对   $ / b.txt,然后重复该操作,但是这次包括两个   源名称($ / a.txt)目标名称($ / b.txt)。 C:\ test>

注意:tf rename具有参数olditemnewitem,这似乎暗示警告TF203066来自对tf rename的不完全调用。

这似乎意味着始终需要手动干预来重命名文件(?)

软件版本

  • Microsoft Team Foundation Server 2012 CU4 v11.0.61030.0(TFVC)
  • Microsoft Visual Studio 2017专业版15.9.13

链接

Rollback Command (Team Foundation Version Control)

Rename Command (Team Foundation Version Control)

0 个答案:

没有答案