2017-10-06 76 views
0

现在我们的源代码控制树看起来是这样的:TFS 2017:无基础合并重构源代码控制树?

Team Project DB 
    | 
    |___ Hello World DB STABLE 
    | 
    |___ Hello World DB RELEASE 
    | 
Team Project Framework 
    | 
    |___ Hello World Libs STABLE 
    | 
    |___ Hello World Libs RELEASE 
    | 
Team Project Windows 
    | 
    |___ Hello World Windows STABLE 
    | 
    |___ Hello World Windows RELEASE 
    | 
Team Project Web 
    | 
    |___ Hello World Website STABLE 
    | 
    |___ Hello World Website RELEASE 

我想将其重组到这一点:

Team Project Hello World 
    | 
    |_____ STABLE 
    | | 
    | |____ Hello World DB 
    | | 
    | |____ Hello World Framework 
    | | 
    | |____ Hello World Windows Client 
    | | 
    | |____ Hello World Website 
    | 
    | 
    |_____ RELEASE 
     | 
     |____ Hello World DB 
     | 
     |____ Hello World Framework 
     | 
     |____ Hello World Windows Client 
     | 
     |____ Hello World Website 

这是一个更大的一个非常小的例子(彻底错位)源代码控制树。我们所有的分支机构/文件夹都处于不同的发展阶段。因此,在代码重新构建之后,某些时候需要合并UP/DOWN。

我试着移动分支和文件夹(显然是在DEV环境中测试),并且似乎不管我做什么,我总是必须在组织完代码后执行无根合并。有没有人知道在TFVC中执行此操作的方法,可以消除代码移动后无基本合并的需要?

提前致谢!

+0

嗨PaulyWally,如果我的回复帮助或给了一个正确的方向,你想要做什么是不可能的。感谢您的投票或[标记为答案](https://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work),这也将有助于社区中的其他人。 –

回答

0

不,这是不可能的。你想要做的是在不同的项目之间分支/复制/移动文件夹/文件,并创建一个新的结构。

在TFS中,您只能合并到直接相关的分支(父或子)。有没有合并关系分支STABLERELEASE你的情况。

您必须执行无基础合并,例如使用tf merge command

tf merge /baseless <<source path>> <<target path>> /recursive 

/毫无根据

中不进行基本版本合并。也就是说,允许用户 合并不具有合并关系的文件和文件夹。在无基础合并之后,存在合并关系,并且未来合并不必 必须毫无根据。

注无基本合并无法删除目标中的文件。您可以手动进行这些更改。