当前位置:  开发笔记 > 编程语言 > 正文

忽略具有特定更改模式的签入文件

如何解决《忽略具有特定更改模式的签入文件》经验,为你挑选了4个好方法。

自从开始使用JetBrains Annotations以来,为了我自己的利益,我用[CanBeNull]或装饰了所有方法[NotNull]

例如,以下行:

public AccountController(IAccountService accountService)

将改为:

    public AccountController([CanBeNull] IAccountService accountService)

另一个例子是:

public Account CreateAccountEntity(Account accountEnttity)

将改为:

    [CanBeNull]
    public Account CreateAccountEntity([NotNull] Account accountEnttity)

如何绕过注释的挂起更改,特别是"[CanBeNull]",并让TFS完全忽略此更改?



1> slugster..:

你不能让TFS"忽略"这个改变.这就是TFS的目的 - 跟踪所有变化.

我解释你的问题的方式,你想要避免由于你的注释可能许多小但无害的签到的噪音.如果这是正确的,那么有一种方法可以使用TFS来最小化噪音:

从你当前工作的地方创建一个分支(让我们称之为"BranchA"),然后在该新分支("BranchB")中进行所有注释更改,定期检查它们

如果这需要一些时间(几天,几周)才能完成,那么请确保定期从BranchA合并到BranchB

当你认为你已经完成了从BranchA到BranchB的最终合并.如果你已经介绍了任何新方法,那么请确保对它们进行注释.如果进行了更改,请重复此步骤.

将所有更改从BranchB合并回BranchA.这样可以将所有较小的更改聚合到BranchA中的单个大型签入/变更集中.如果你一直在从BranchA到BranchB进行定期合并,即使你开始装修工作已经过了相当长的时间,这应该没有问题.



2> TheBigSot..:

简而言之,你不应该,最接近的功能是tfignore,但这将忽略所有文件.

另一方面,如果你真的想要这个,你可以使用TFS API创建一个工具,你必须在签入之前运行它,它会验证你的解决方案中的所有待处理文件,并寻找这个小的变化和排除文件,但这可能会导致问题,在某些时候您可能会对已排除的文件进行更改,并且不会检入并导致问题.您需要添加额外的代码以验证应从排除列表中包含哪些文件.

VS中使用的外部工具在这里,您可以看到如何将工具添加到"工具"菜单并向其发送参数.

TFS API示例 此示例显示如何使用TFS API.有一个'workspace.AddIgnoreFileExclusion()',但我这里没有TFS,所以我稍后会验证如何忽略这些文件.

根据我的经验,我不想检查这些变化的唯一原因是避免与团队发生冲突.如果我在某些练习中看到很多有价值的东西,比如使用注释,我会与团队讨论让他们购买使用注释的想法,这样每个人都会使用它,很快每个文件都会有注释和不会有任何冲突.



3> Daniel Mann..:

您无法有选择地忽略文件,TFVC或我遇到过的任何其他SCM中的更改.



4> Vasyl Zvaryd..:

我同意其他答案,即微软没有正式支持此类功能.

但是如果确实需要,你也可以通过几种方式覆盖TFVC .您可以编写自己的Visual Studio插件或源代码控制VSPackage.

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有