无法推送到 Plastic SCM 服务器:源分支不能有多个头
Can't push to Plastic SCM server: the source branch can't have multiple heads
我正在尝试将本地存储库分支上的变更集推送到 Plastic SCM 云上的变更集。据我在 Branch Explorer 中所知,分支上只有一个负责人。但是当我尝试推送时,出现错误 "The source branch can't have multiple heads." 我该如何解决这个错误?我在哪里可以找到 Plastic 所说的第二个头?
有时很难找到未合并并导致双头情况的变更集。
我已经创建了这个小工具 -> MultipleHeaderFinder 它能够忽略已经合并的变更集,这就是你如何使用它(假设你正在复制 quake@localhost:8087 的主分支存储库):
- cm 找到 merge where srcbranch='br:/main' and dstbranch='br:/main' --format={srcchangeset} --nototal > merges.txt
- cm 在 branch='/main' --format={changesetid}@{parent} --nototal > csets.txt
处查找变更集
- MultipleHeaderFinder.exe csets.txt merges.txt quake@localhost:8087
它将return类似于:
mount:56e62dd7-241f-41e9-8c6b-dd4ca4513e62#quake@localhost:8087 合并自:Merge 476
最后一个数字是导致问题的变更集,您可以在分支浏览器中找到它并合并它。您可能有多个,在这种情况下,对找到的每个变更集重复合并。
希望对您有所帮助!
我正在尝试将本地存储库分支上的变更集推送到 Plastic SCM 云上的变更集。据我在 Branch Explorer 中所知,分支上只有一个负责人。但是当我尝试推送时,出现错误 "The source branch can't have multiple heads." 我该如何解决这个错误?我在哪里可以找到 Plastic 所说的第二个头?
有时很难找到未合并并导致双头情况的变更集。
我已经创建了这个小工具 -> MultipleHeaderFinder 它能够忽略已经合并的变更集,这就是你如何使用它(假设你正在复制 quake@localhost:8087 的主分支存储库):
- cm 找到 merge where srcbranch='br:/main' and dstbranch='br:/main' --format={srcchangeset} --nototal > merges.txt
- cm 在 branch='/main' --format={changesetid}@{parent} --nototal > csets.txt 处查找变更集
- MultipleHeaderFinder.exe csets.txt merges.txt quake@localhost:8087
它将return类似于:
mount:56e62dd7-241f-41e9-8c6b-dd4ca4513e62#quake@localhost:8087 合并自:Merge 476
最后一个数字是导致问题的变更集,您可以在分支浏览器中找到它并合并它。您可能有多个,在这种情况下,对找到的每个变更集重复合并。
希望对您有所帮助!