Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio TFS 2017:签入政策正在进行签出_Visual Studio_Tfs_Visual Studio 2017_Team Explorer_Vcs Checkout - Fatal编程技术网

Visual studio TFS 2017:签入政策正在进行签出

Visual studio TFS 2017:签入政策正在进行签出,visual-studio,tfs,visual-studio-2017,team-explorer,vcs-checkout,Visual Studio,Tfs,Visual Studio 2017,Team Explorer,Vcs Checkout,我有一个自定义的TFS签入策略,用于公司的一些项目。有些项目非常庞大,为它们运行策略大约需要10秒左右。每次有人登录时,花10秒钟是可以的,因为这样可以防止产生可能需要数小时的问题。因此,政策确实有帮助。我遇到的问题是,VS启动策略不仅仅是为了签入,而是从签出启动策略并保存签出文件。这对每个人来说都很烦人。现在我看到开发人员正在禁用该策略以避免VS冻结 有人知道为什么VisualStudio会在签出和保存期间运行该策略吗 我认为除了签入之外,VS没有任何设置可以阻止运行,但在代码中是否有方法可以

我有一个自定义的TFS签入策略,用于公司的一些项目。有些项目非常庞大,为它们运行策略大约需要10秒左右。每次有人登录时,花10秒钟是可以的,因为这样可以防止产生可能需要数小时的问题。因此,政策确实有帮助。我遇到的问题是,VS启动策略不仅仅是为了签入,而是从签出启动策略并保存签出文件。这对每个人来说都很烦人。现在我看到开发人员正在禁用该策略以避免VS冻结

有人知道为什么VisualStudio会在签出和保存期间运行该策略吗


我认为除了签入之外,VS没有任何设置可以阻止运行,但在代码中是否有方法可以识别操作是签入、签出还是保存,以便我可以相应地编写逻辑?

通常,签入策略仅在签入挂起的更改时起作用。因此,请仔细检查问题是否确实是由自定义签入策略引起的

对于签入策略,您可以在签出要编辑的文件时禁用它,然后在要签入挂起的更改时启用它

启用签入策略

  • 团队菜单上,单击团队项目设置,然后单击源 控件
  • 源代码管理设置对话框中,单击签入策略 标签
  • 在“策略类型”列表中,选择要启用的策略类型, 然后单击启用
  • 单击确定
  • 禁用签入策略

  • 团队菜单上,单击团队项目设置,然后单击源代码管理
  • 源代码管理设置对话框中,单击签入策略 标签
  • 在“策略类型”列表中,选择要删除的策略类型, 然后单击禁用
  • 单击确定
  • 有关详细信息,请参阅


    更新:

    请参阅本文以检查:

    在签入之前,TFS会评估工作区中挂起的更改 目录

    因此,它将花时间评估挂起的更改,这是预期的行为


    除此链接中提到的设置外,VS中没有任何其他自定义策略设置:

    我不认为在签出期间禁用策略并在签入时重新启用它是一个好主意。例如:在我们公司,他们有20多名开发人员,这将非常耗时。@Dilshod Yes,答复是基于您的原始要求。正如我在上面的回答中提到的,您应该首先检查问题是否确实是由自定义签入策略引起的。通常,签入策略不限制签出操作。如果它真的是策略,那么您需要检查自定义策略的代码来调试它。否则,没有任何有效的方法来实现您的要求。如果我正确理解了问题,则在签出和保存编辑的文件期间,自定义策略正在起作用。政策本身的执行没有问题。只是VS在奇数时间启动了这项政策。我想知道VS是否有一些设置,您可以在其中进行更改,以便在签出和保存文件期间不启动策略,或者以某种方式进入策略本身,了解当前操作是什么(如签入、签出、保存),并在未签入时退出。@Dilshod请参阅本文进行检查:
    ,然后签入,TFS评估工作目录中挂起的更改
    。所以它会花时间去做,这是预期的行为。VS for custom policy中没有任何其他设置,除了此链接中提到的设置:我就是这样调试的。我有一个代码,可以在策略运行时生成日志。所以我清除了所有日志,并尝试签出文件进行编辑,策略正在运行。保存编辑过的文件时也是如此。我找不到你发给我的那些链接的任何信息。