搁架的目的是什么?

Ric*_*nks 16 tfs tfs2010

我一直在使用TFS一段时间,但作为一个单独的开发人员,我还没有完全使用它的功能.我现在的任务是与海外的几位同事合作,我们将使用TFS的共享版本.他们的一个过程是搁置,但我不确定如何使用它.我决定玩一玩,但我不确定在创建一个搁架后该做什么.我的流程如下: -

我从TFS打开了一个已完全签入的现有项目,并对其中一个文件进行了简单的更改.然后我创建了一个搁架组.然后我关闭了项目并从源代码管理中重新打开它.我注意到我所做的更改没有应用,这是正确的,但文件仍然检查给我.在这一点上,我的困惑开始了.如果我创建一个搁置集,我应该进行撤消挂起更改,以便将原始文件检入TFS,以便我的同事可以使用它们或从中创建构建.

我对这个过程有点困惑.

Dyl*_*ith 22

根据我的经验,搁置集通常用于3个目的:

  1. 在我准备办理登机手续之前切换任务
  2. 从同事那里获得无效代码的帮助
  3. 代码评论

创建搁置集时,您有一个复选框,可以选择是否要同时撤消挂起的更改.

对于#1,我想检查框以撤消我的更改,因为搁置的整个目的是获得一个干净的本地工作空间以开始新任务.

对于#2,我可能不会撤消我的更改,因为在同事查看我的代码并帮助我后,我将继续处理这些更改.

对于#3,这仅适用于代码审查工作流程是预先签入的情况,在这种情况下,您通常会撤消待处理的更改,以便您可以在等待审核时开始处理下一个项目而不是更改.

  • #5:在晚上离职前备份你的代码. (12认同)
  • 有一个#4 - 门禁签到. (8认同)

rag*_*eit 7

仅供参考,此MSDN链接提供了机架集的用法:

  • 中断:您有尚未准备好签入的待处理更改,但是您需要处理其他任务。
  • 协作:您有尚未准备好签入的待处理变更,但需要与其他团队成员共享。
  • 代码审查:您希望其他团队成员对您的未决变更执行代码审查。
  • 私有构建:在签入更改之前,您可以使用自动构建系统来构建和测试代码。
  • 备份:您的工作正在进行中,您现在无法完成,因此您需要一个备份副本,该副本存储在服务器上,可供其他可能需要访问它的团队成员使用。
  • 移交:您有正在进行的工作要移交给其他团队成员。


小智 1

从流程的角度来看(在敏捷商店中),主要用途是确保您的代码使用现有代码构建,而不会破坏团队其他成员在集成分支上的构建。上面提到的项目将帮助您完成此任务。

简而言之:如果构建不正确,切勿检查任何内容。搁置您的代码,以确保它可以工作,并且在签入之前不会破坏构建。如果您确实破坏了团队的构建,则您的夜间构建(如果有)将无法工作,因此您的测试人员将无法获得新的构建可以使用的代码库。

注意:您的代码一开始可能会有错误,但没关系,只要不要破坏构建即可。如果您的代码不够成熟,无法进行测试(破坏了某些内容或可能破坏了整个应用程序),请确保您的代码在应用程序中处于非活动状态。执行此操作有很多技巧,从简单地注释代码以便您可以将其签入到添加某种异常以防止代码运行,除非您在调试期间设置变量。我确信您还可以做数百万其他事情。