2011-08-24 43 views
2

我在哪里工作,我们有一个很长的构建过程,其中包括十几个模块。我在模块[A]中工作,并且在代码检入模块[B]和[C]的同时,代码被检入到模块[A]中(这种情况发生在开发人员正在处理交叉模块项目时)。如何临时安全地忽略来自TFS的文件/更改

问题是我周期性地获取了我的模块的最新版本(对于与开发数据库模式有关的其他原因是必需的),并且新代码可以引用其他模块中的代码([B],[C]等)这在我们的日常构建中还没有建成。我可以下拉模块[B]和[C]并自己构建它们,但由于涉及构建过程的配置,这可能需要几个小时。

到目前为止,我的解决方案一直是将包含尚不可用功能的代码注释掉,然后尝试记住在完成我的工作时不要检查这些注释。有没有办法将文件签出(或一系列文件签出)标记为临时?

短版

如何纪念我的修改部分,这样,当我去检查,在这些变化(而不是我的变化其余部分)被忽略/百废待兴?

- 编辑

我不能使用,因为涉及我们的开发数据库和我们自家酿制的ORM同步问题分支。

回答

0

我发现的答案是使用称为隐藏的TFS功能。我可以隐藏包含违规代码的文件夹,然后我不会错误地检查我试图忽略的代码更改。它仍然有点麻烦,因为我需要确保在完成后关闭隐藏功能,但至少我不会在意外事件中清除好的代码。

5

简答:没有抱歉。

作为一个提示,它听起来像你需要考虑你的分支策略。您最好为您的工作创建一个分支,以便您可以单独工作,然后在工作完成时将更改合并回主分支。只需记住在构建过程完成后定期从主分支拉出,以便最终合并相对无痛。

+0

请参阅[Team Foundation Server 2010分支指南](http://tfsbranchingguideiii.codeplex.com/)以了解TFS 2010如何轻松进行分支。 –

+0

+1给了我一个合适的答案,但它不是一个办法。我仍然会遇到同样的问题(我将不得不记住哪些更改在登机时应该是暂时的)。 – wllmsaccnt

+1

不,你不会的。如果您正确设置了功能分支,则在您需要进行集成之前,您不必担心其他代码的更改。 –

0

这不是TFS Shelvesets的用途吗?您可以将所有更改放入一个shelveset中,稍后再提交,然后按照现有代码进行工作。

如果您还没有准备好完全提交它们,搁架是一种很好的方式来让您的更改等待。

+0

不,重点是我不想稍后提交更改。我想进行暂时的更改,不会提交。 – wllmsaccnt

+0

是的,我知道我提到你可以稍后提交它们,但是我也使用Shelvesets的意思是你也可以放弃它们。 – finoutlook