我想知道是否有一个有用的命令来撤消TFS中未更改的文件。
我尝试过使用“tfpt uu”命令。但它只撤消/恢复服务器和本地工作区中未更改的文件。例如。在服务器上更改但未在工作区中触摸的所有文件都保留为已签出。我想要的是恢复/撤消我工作区中未更改的所有文件。对于该场景,tfpt uu-command似乎没用。
如何在TFS中恢复/撤消未更改的文件,其中未更改文件的定义是工作空间中未更改的文件。
示例:
我有两个工作区ws1和ws2。 Ws2用于模拟在TFS中进行源更改的其他用户,ws1表示我自己的工作空间。我们有3个文件A,B和C.
还原/撤消的唯一文件是C.文件A和B仍然在ws1中签出
我希望A和C都可以恢复/撤消,因为它们在ws1中没有被更改。
答案 0 :(得分:4)
在/noget
上指定tfpt uu
选项,我认为您将获得您所追求的行为。
答案 1 :(得分:1)
听起来你需要合并/解决对文件A的更改,然后才会知道文件没有改变。由于文件A已签出,因此TFS希望您在更新本地副本之前解析该文件。所以tfpt无法识别文件没有改变,因为它与(最新的)服务器版本不同。
答案 2 :(得分:0)
问题是陈旧的,但这可能有所帮助:假设工作区中的所有文件都指向相同的变更集,您可能会再次比较您的工作版本:
首先,获取您的工作版本:
tf history . /r /noprompt /stopafter:1 /version:W
然后撤消所有未更改的文件(假设上一个命令返回123456作为您的工作版本):
tfpt uu /changeset:123456 /recursive
答案 3 :(得分:0)
我遇到类似的情况,我已经分支了我的代码,然后重命名了分支,当我把它们合并在一起时,每个文件都有一个"更改"因为重命名(物理路径已更改)。
我尝试了两个选项:
由于这些都不适合我,我厌倦了寻找,但想到这些选项中的一个可能适用于其他人。
答案 4 :(得分:0)
相关:Date Created/Modified attribute on files似乎使 WebDriverWait wait = new WebDriverWait(driver, 10);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("elementCSS")));
element.click();
无法正常工作,因为我手动将文件从一个分支的本地目录复制/粘贴到另一个分支的本地目录,并且它拒绝撤消任何内容,即使只有少数文件已被删除修改。
在我的情况下,修改时间戳是相同的,但创建时间戳关闭了10分钟,因为这显然是我花了多长时间将两个分支下载到我的本地开发机器。