如何撤消未更改文件的挂起更改?

问题描述:

TFS使我疯狂的一件事是,如果你有一个文件被检出,但你没有做出任何改变,它仍然表现为一个变化,让你从你做出的真正改变中分心。当你使用T4等工具生成代码时,这是非常烦人的,因为大部分时间该工具会生成相同的代码,但会将该文件签出。如何撤消未更改文件的挂起更改?

出于某些我无法理解的原因,Visual Studio坚持将这些变化显示出来,甚至会声称如果另一个人碰巧签入了相同的“变更”,则会发生冲突。

Fortunately, the TFS Power Tools include a command that compares checked-out files with the server version and undoes the unchanged files. I will explain how to integrate it into Visual Studio using a custom tool.

这是不幸的是没有提供,如果您使用Visual Studio 2017年!

它曾经是very simple与早期版本的Visual Studio来实现:

tfpt uu /noget /r * 

我们如何从待定更改删除文件,如果他们没有任何变化?

根据您在TFS中选择的版本控制系统,这是不同的,所以上述问题只存在于TFS的传统版本控制系统TFVC,而不是现在已经支持几年的git。

对于TFVS部分的解决方法是,以纪念所有文件,单击鼠标右键并撤消...并单击下面的对话框撤消更改按钮。这会提示您输入不同的文件(让您选择否全部),但不适用于没有更改的文件。 重要:我写'部分',因为这种方法不适用于文件重命名,因为该文件被认为是未更改,所以重命名将被撤消。

+0

这将需要手动查看每一个文件以及是否有任何事实的变化 –

+0

不,你选择*全否*然后只有没有改变的那些被撤消。 –

+0

@l --'''''''- - ''''''''''''你是否能够使用它? –

是的,有Team Foundation Server的2017年没有电动工具,您可以使用以下解决方法:

您的项目中,选择取消检出单击鼠标右键,这时只要按一下还行,或任何确认离开.. 。

然后,当撤消结帐,为每一位有它REAL修改文件,提示将要求您确认签出该文件......只需单击“全否”。 Visual Studio会知道检出的文件是否有更改或没有更改。

警告:此方法还会删除新文件,即尚未签入TFS的文件。如果你想保留这些文件,那么简单地将它们从你“撤销”的文件组中排除。

你也可以看看这个问题:他的问题Files listed as pending changes when doing merges that didn't change?

+0

我们正在使用tfs 2013和vs 2017。你是建议去我们的150个项目的每一个,并点击撤消结账? –

+0

@l - '''''' - ''''''''''''如果因为失业而导致多个项目工作,没有尝试过,但我对于单个项目,我确定它在我身边很好。您可以尝试为单个项目和多个项目执行此操作。对于多个项目,在团队资源管理器中撤消待处理的更改时。一旦你得到确认对话框选择“全无” –

+0

我已经有1500个挂起的更改,到目前为止它已经停留了20分钟,试图在点击全部否决之后撤销挂起的更改 –