gpt4 book ai didi

TFS 2010 : Branching - Why do changesets say they haven't been merged when they were from before the Branch?

转载 作者:行者123 更新时间:2023-12-04 11:57:05 29 4
gpt4 key购买 nike

我创建了一个分支,当我第一次从源代码合并到分支时,出现了一大堆旧的变更集,它说没有合并,但它们在分支之前就存在,我确认它们在那里。

例子:
假设当 Source 中有 9 个变更集时,我从 Source 分支到 Target。
在 Source 中进行了更改 10。
我从源合并到目标,TFS 告诉我更改 6 和 7 和 10 需要合并(即使 6 和 7 在我分支之前就在那里,我可以确认这些更改在目标中)

我是 TFS 的新手,这发生在我第一次开始实现分支和合并时。
我做的最新分支没有这样做。

现在我们有一个主干,然后有 1 个分支用于下一个版本的持续 QA,另一个分支用于生产修补程序。是 QA 分支出现了这个问题,但是当我制作修补程序分支时,它很好。

最佳答案

我遇到过几次。我最终只是将“流氓”候选变更集从源合并到目标。我检查了挂起的合并并确定没有更改。提交合并摆脱了这些候选变更集。我想如果它不起作用我可以回滚。

编辑 : 看来,如果你升级到 TFS 2010,有一个 bug 会导致额外的合并候选(见 http://support.microsoft.com/kb/2135068)

“一个分支上的任何项目如果被多次重命名或有多个其他项目占据了它们的命名空间(通过添加/删除组合)将失去与其他分支上相应项目的关系。”

至于决议,支持文章说:

“要解决额外合并候选的问题,应使用/discard 选项。为此,请从命令行运行以下格式的合并:
tf merge <source branch> <target branch> /r /discard:CXXX~CYYY
在本例中,XXXYYY表示要丢弃的更改范围的变更集 ID。 checkin 此合并后,不需要的候选将不再出现以供将来合并。另请注意,由于 TFS 2010 中合并算法的改进,在源分支和目标分支中删除的项目将导致合并更改。在这些情况下,最好不要丢弃变更集,以便正确更新合并历史记录。 ”

关于TFS 2010 : Branching - Why do changesets say they haven't been merged when they were from before the Branch?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9607870/

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