该问题是上一个问题的衍生词:How to version resources that are shared across projects
我有一个项目,其中包含许多其他项目使用的代码。具体来说,此父项目中的一个文件夹已分支到相关的子项目。
此后,我们在父项目中进行了更改并 checkin 。在Source Control Explorer中,我右键单击父项目中的分支文件夹,然后选择“合并”,以将更改推送到从属项目中。我选择子项目作为目标,然后选择“最新版本”。向导通知我“没有要合并的更改”。
在我看来,这是不正确的,因为最近更新的文件明显不同。
这里对TFS中的合并过程有基本的误解吗?我需要做些什么?
最佳答案
TFS合并引擎几乎完全依赖历史记录,而不是文件内容。这对于大型树木来说非常有效,对于诸如安全地选择变化之类的任务也很灵活-但也使回答问题变得困难。
第一步是了解诊断命令tf历史记录,tf合并和tf合并/候选。这是一个很好的介绍:http://blogs.msdn.com/dstfs/archive/2009/04/15/a-note-on-merging-and-the-use-of-tf-merges-tf-merge.aspx
如果您不熟悉在TFS中进行分支和合并,那么您的历史记录可能不会很复杂。我认为您很可能会通过快速调用tf合并找到答案。但是,在一般情况下,跟踪合并历史记录会变得非常复杂,因此,如果您有困难,请随时回发更多详细信息。