gpt4 book ai didi

tfs - 是否可以将文件夹从一组 TFS 分支移动到另一组并保留挂起的更改?

转载 作者:行者123 更新时间:2023-12-04 08:50:40 24 4
gpt4 key购买 nike

目前,我们的 TFS(TFVC,而不是 git)项目包含一个文件夹,该文件夹托管我们的整个产品。该文件夹包含三个分支(Dev、Main 和 Release),每个分支又包含许多不同的子项目。我们正在尝试重组,以便将不同的组件包含在它们自己的分支结构中。

问题:是否可以将包含在分支(而不是分支本身)下的文件夹及其在其他分支中的对应文件夹移动到新的 TFS 项目中,同时保持任何未合并变更集的关系和状态?

这是我们想要的最终结果的图表:

target structure

我们想将每个“项目 1”文件夹(左侧)移动到它们自己的分支结构(右侧)中,但我们需要任何未合并的变更集来“出现”。也就是说,如果我们尝试在新结构中从 Dev 合并到 Main,我们会看到一个未合并到旧结构中的(相关)变更集列表。

这可能吗?如果是这样,什么系列tf/tfvc 命令 我们需要取消这个吗?我已经深入谷歌,但出现了简短 - 要么是因为我不知道如何以搜索友好的方式描述这一点,要么根本不可能。

我试过的:

  • 将每个文件夹直接移动/重命名到新项目中(预先创建每个目标 Dev/Main/Release 分支)
  • 未合并的变更集丢失了。
  • 我得到的只是一个“移动/重命名”变更集,它出现在新分支的未合并列表中。合并导致目标分支中的所有内容被覆盖(即发布分支的文件现在与开发相同)。
  • 在 + 方面,未搁置的搁置搁置“自动跟随”
  • 将每个文件夹分支到新结构中(这次没有预先创建目标分支文件夹)
  • 这创建了三个彼此不相关的分支。
  • 我能够通过在它们之间进行无根据的合并( tf merge /baseless /recursive )并在冲突时获取目标分支文件来解决这个问题;其次是重新养育分支。 (如 here 所述)
  • 与上述不同,文件本身最终是正确的(没有被覆盖)。
  • 未合并的变更集丢失了。
  • 货架上架到原来的位置

  • 如果这很重要,如果这是解决这个问题的唯一方法,我们愿意失去整体历史。我们最好保留它,即使这意味着在某处存储“已弃用”的原始副本。我也不太担心搁置集会“跟随”它们的来源……我们只有两个会受到影响,如果需要,我们可以手动处理它们。我们正在使用本地 TFS 2018。

    编辑:响应已发布然后删除的答案:

    我不是要移动 Twig ,而是要移动 提取文件夹 深入到他们自己相应的分支结构中,而不会丢失未决的更改。我只展示了上面两个层次,但实际上它们要深得多。我可以 tf rename沙箱中的整个分支并获得预期结果......但重命名分支不是我想要做的,移动文件夹会产生意想不到的结果。

    最佳答案

    似乎您可以通过从新的 Dev、Main、Release 分支和旧项目文件夹中建立合并关系来实现您想要的。我认为您可以对上面尝试的第二个“路线”进行变体。

  • 分公司 Release > Project[x] 文件夹放入 新品 项目[x] > 发布分支
  • 分公司新品 项目[x] > 发布分支进入 新品 项目[x] > 主分支
  • 合并(无根据) Main > Project[x] 文件夹(指定更改集
    发行版从) 分支到 新品 项目[x] > 主分支
  • 分公司新品 Project[x] > Main Branch 进入 新品 项目[x] > 开发分支
  • 合并(无根据) Dev > Project[x] 文件夹(指定变更集
    Main 是从) 分支到 新品 项目[x] > 开发分支
  • 对其他项目重复此操作

  • 目标是创建新的分支合并关系(通过将[new] Release分支到[New] Main,然后将[New] Main分支到[New] Dev。此时合并关系已经建立,所有分支都在同一个状态。然后我们将主和开发的[旧]无根据合并到[新]。对于主,我们希望在主和发布相同的状态(旧的)上进行无根据合并。对于开发,我们希望在 Dev 和 Main 相同的状态(在旧的)上做 baseless 合并。然后可能会发生从 [old] 到 [new] 的额外合并,这些应该被检测为从 [new] 到 [new] 的可合并更改] 类似于它们在 [旧] 到 [旧] 中的样子

    您将丢失搁置集(但始终可以在旧位置取消搁置、 checkin 并合并到新位置),但只要旧项目未被破坏,就应保留历史记录。

    关于tfs - 是否可以将文件夹从一组 TFS 分支移动到另一组并保留挂起的更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53782644/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com