【发布时间】:2017-02-11 14:06:30
【问题描述】:
背景
如果我合并我们的main 分支到我们的development 分支,TFS 将声明没有要提交的更改。然而,文件级别比较(使用WinMerge)清楚地表明存在差异(例如文件丢失、文件内容不同等)。
简而言之,我们的 main 和 development 分支不再同步,这很可能是由于在之前的 TFS 迁移期间丢失了变更集。
问题
生成以下内容的最佳方法是什么?
- 通过以下方式同步
main和development分支:对development分支执行所有必要的插入/更新/删除操作。 (即main是主副本)。- 在进程结束时 WinMerge 应该指出两个分支之间的差异为零 (0)。
- 保持
development分支历史不变。 - 通知 TFS
development分支现在与main完全同步,以便:- TFS 不会尝试合并较旧的
development变更集与main - 只有将来对
development的更改才会在合并 操作期间推送到main。
- TFS 不会尝试合并较旧的
TFS 不是我的专业领域 - 如果您能提供任何指导,我们将不胜感激。
上下文
- Visual Studio 2015
- TFS(版本 14.95.25122)
参考文献
-
Merge Command
-
"进行无base版本的合并。即允许用户合并没有合并关系的文件和文件夹。baseless合并后存在合并关系,以后的合并不必是baseless 。”
- 虽然
Development是从Main分支出来的,但这似乎可以解决我缺乏历史记录(即缺少变更集)的问题。
- 虽然
-
"进行无base版本的合并。即允许用户合并没有合并关系的文件和文件夹。baseless合并后存在合并关系,以后的合并不必是baseless 。”
- TFS Merge: Best Practices
-
TFS: Overwrite a branch with another
-
tf merge A B -r -force -version:T- 我认为这对我们不起作用,因为缺少变更集。
-
【问题讨论】:
-
文件差异的存在并不意味着有变化可以从主要合并到开发。运行“tf merge /candidate /recursive main development”和“tf merge /candidate /recursive development main”命令会有什么结果?
标签: tfs version-control tfs-2015