【发布时间】:2011-04-16 20:52:30
【问题描述】:
似乎我的方案已经尽可能简单了。我有 Main 和一个名为 Dev 的分支。我在 Dev 中选择了一个只有我的代码的目录并进行了合并(基于特定变更集的所有变更集。
第一个问题,它是立即签入合并,还是我应该在此之后立即签入?我问是因为这些消息,我将它们保存在记事本中,但没有准确地写下我所做的。冲突是因为目录结构发生了变化。
变更集 322 已成功签入。
删除 C:\SourceEagleConnect\Main\BizTalk\ACH\Sample\Sample1.sln TF14119: 无法将 $/EagleConnect/Dev/BizTalk/ACH/BizTalk 的删除合并到 $/EagleConnect/Main/BizTalk/ACH/BizTalk,因为其子项之一已被重命名或移动。 TF14121: 之前对 $/EagleConnect/Dev/BizTalk/ACH/Sample1/Sample1.sln 所做的未合并更改将通过合并删除 $/EagleConnect/Dev/BizTalk/ACH/Sample1/Sample1.sln 被丢弃. TF14119: 无法将 $/EagleConnect/Dev/BizTalk/ACH/BizTalk 的删除合并到 $/EagleConnect/Main/BizTalk/ACH/BizTalk,因为其中一个子项已被重命名或移动。
“ACH”项目真的不是我关心的项目,它是其他项目中的关键文件。
然后我使用比较工具比较了 Dev 和 Main 的磁盘,我看到 Main 中的许多文件没有 Dev 的更改。
在一个特定的文件上,我做了以下分析。我在 Dev 和 Main 中都“查看历史记录”,然后从命令行“tf merges Dev/file Main/file”运行。
查看历史开发节目:
213 edit nwalters 8/6/2010 2:43 PM New Host Names based on application instead of adapter
159 edit nwalters 7/20/2010 10:16 AM BTDF - reset to use new SettingsFileGenerator.xml, improved to handle new EagleConnectConnectionString
50 branch nwalters 6/22/2010 10:04 AM Original checkin of "Dev" Branch
查看主要节目的历史记录:
323 merge, edit nwalters 9/23/2010 2:02 PM BizTalk-Only Merge 09/23/2010 (there were some ACH warnings)
175 merge, edit nwalters 7/27/2010 2:29 PM Check-in after big merge of all BizTalk from Dev to Main
49 add nwalters 6/22/2010 10:00 AM Original checkin of EagleConnect source cod to TFS
“tf 合并”显示:
Changeset Merged in Changeset Author Date
--------- ------------------- -------------------------------- ----------
159 175 nwalters 7/27/2010
213 323 nwalters 9/23/2010
所以它看起来像变更集 213,“丢失”的变更包含在 323 合并中。然而,当我查看 Main 源代码时,它并不存在(它不在磁盘上,如果我进行“查看”[来自源代码浏览器中的历史],它似乎也不在 TFS 中)。
当我现在进行合并时,它会显示“没有要合并的内容”。
【问题讨论】:
标签: version-control tfs merge