在撤销之前混乱的集成后,无法从主分支完全集成到功能分支

2024-04-24

我正在使用 Perforce P4V 客户端(版本 2013.1/611291,日期为 2013 年 3 月 20 日)。

我尝试从主分支合并/集成到我的功能分支。我已经很久没有这样做了,所以大量的文件被添加到变更列表中。然后我解决了无法自动合并的冲突文件。然后我提交了变更列表。这样做之后,我发现一些文件仍然处于混乱冲突的状态。到底为什么对我来说是个谜,但我没有试图解决它们,而是thought完全撤消合并/集成并重新开始会更容易。

为了撤消合并/集成,我使用了“退出”选项。所有受影响的文件都已添加到“退出”更改列表中,并且我提交了它。我的功能分支现在又回到了开始的地方,除了显然现在所有受影响的文件的修订号都增加了两次,并且受影响文件的历史记录显示了集成,然后是随后的“退出”。

问题是,如果我再次尝试合并/集成选项,这一次 Perforce 想要放入集成更改列表的文件数量现在只是它最初尝试集成的文件数量的一小部分。换句话说,它并没有添加大量我知道在主分支的开发方面肯定会进一步推进的文件。

我似乎能够解决这个问题的唯一方法是使用高级选项Force integration on all revisions, disregarding revision history (-f)。设置此选项后,它将添加合并all来自分支的文件。

我怀疑这个问题与文件现在在其历史记录中标记了集成这一事实有关,因此 Perforce 正在使用该点作为基础。混乱的集成被“取消”这一事实对此没有任何影响。

我也尝试过回滚,但同样的问题仍然存在。

我该如何解决这个问题?

Edit后来我发现还有一个类似的问题:如何在 Perforce 中撤消集成并仍然能够重做它? https://stackoverflow.com/questions/5198180/how-can-i-undo-an-integration-in-perforce-and-still-be-able-to-redo-it


  • 您尝试从主分支集成到功能分支的文件在首次集成签入后具有集成历史记录。
  • 当您撤消更改时,功能分支的文件会恢复到集成之前的状态,但会为先前更改列表中的每个文件创建新版本的文件。
  • 因此,下一个集成尝试引入ONLY与上次相比整合路径的差异。

正如您已经提到的,摆脱这种情况的唯一方法是使用-i。您仍然可以使用以下方法解决更改p4 resolve -as ... and p4 resolve -am ...就像上次一样,然后手动解决剩余的冲突以执行合并。除了历史记录会显示在之前的合并提交和撤销它的提交中更改的文件的 2 个额外版本。

  • 如果您同意在不同位置创建功能分支并丢弃当前位置的功能分支,则可以在执行有问题的集成之前将新功能分支的起点设置为提交/更改列表。
  • 从主分支集成到新功能分支中,这次您应该拥有更清晰的历史记录,并且还应该拥有在原始功能分支中所做的所有文件更改(带有历史记录)。

与其他版本控制系统不同(例如git例如),遗憾的是不可能强制重写历史记录以使其忘记集成历史记录并重新开始。

这是我公司的原因之一,所有架构师和 SCM 都非常挑剔,并重申他们的工作流程建议,即在使用以下命令执行集成时严格遵循分支之间的集成路径perforce.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在撤销之前混乱的集成后,无法从主分支完全集成到功能分支 的相关文章

  • p4命令相当于什么 svn status [重复]

    这个问题在这里已经有答案了 可能的重复 如何在 Perforce 树中查找未跟踪的文件 svn状态的模拟 我想知道什么 p4 命令可以显示哪些文件已更改 哪些文件未签入等 如果您正确使用 perforce p4 open 就是您要查找的内容
  • 直接从 Perforce 命令行更改工作区 clobber 选项

    如何从命令行更改 perforce 规格 我想做的是 我有一个工作区 其 clobber 选项设置为noclobber 默认值 现在我想把它改成clobber 我知道我可以直接从p4v 但我不想要那样 我也知道如果我跑p4 client 它
  • 我可以将签出的文件集成到 perforce 上的不同分支中吗

    我们正在进行设计 为此我们在主分支中创建了类的骨架 现在 我们开始编码 为此我们有了一个新分支 因此 如果我可以将主分支中的所有新文件移动到新分支中 那就太好了 但是 我还无法签入它们 那么 是否可以集成已签出的变更列表 谢谢 Perfor
  • p4 命令相当于 git/hg/bzr/svn status 之类的命令是什么? (提示:不是“p4 状态”)

    问 其他版本控制工具的 status 命令的 perforce 等效项是什么 E g git status or hg status or bzr status or svn status 令人困惑的是 cvs update nq是该版本控
  • 解决方案资源管理器中文件上的蓝色问号

    当通过 P4VS 打开绑定到 Perforce 的解决方案时 我的 VS2012 解决方案资源管理器中的文件上经常出现蓝色问号 看起来有些东西无法与仓库 工作区 诸如此类的东西 同步 点击 刷新视图 总是能解决问题 但我每天都这样做已经厌倦
  • 尝试触发任何 Perforce 命令时,每次都必须在命令行中设置端口

    我是 Perforce 的新手 需要在命令行中工作 我很困惑为什么教程网站上的所有命令都写成这样 p4 命令 但每次尝试触发该命令时我都必须添加端口 例如 p4 同步 我必须输入 p4 p myhost myport 每次即使在登录后也会同
  • 如何使用 p4merge 作为 Mercurial 的合并/比较工具?

    有谁知道如何设置水星 http www selenic com mercurial wiki index cgi Mercurial to use p4merge http www perforce com perforce product
  • 工作空间和工作目录是什么关系

    我一直在阅读有关 Perforce 的内容 但没有找到任何关于工作空间和工作目录之间关系的全面解释 例如文件如何出现在工作区的工作目录中 如何跟踪它们 工作区文件和工作目录文件之间可能存在哪些不一致等 我来自git背景 所以我正在寻找类似于
  • 从 Perforce 恢复已删除的文件

    上个月我从 Perforce 中删除了一个文件 有办法从 P4 中检索它吗 如果是这样 我可以使用什么命令 注意 我不是 p4 的管理员 我不希望该文件返回到 P4 但我只想将其保留在我的本地工作区中 另外 我不知道上个月删除它的确切时间范
  • 如何在 Perforce 提交上触发 Jenkins 构建

    我将 Jenkins 与 Perforce 结合使用 我已经下载了P4插件 https wiki jenkins ci org display JENKINS P4 Plugin 我已经阅读了文档 但我仍然有点困惑 在我的 Jenkins
  • 如何使用 python 脚本中的“p4 info”获取perforce工作区的“客户端名称:”?

    我有一个场景 我需要有 perforce 工作区客户端名称信息 尝试使用脚本如下 import sys import subprocess cmd p4 info grep Client name print p4 command is c
  • 如何在 Perforce 中删除流仓库?

    基本上我想做的是从服务器上删除一个仓库 我可以访问 P4Admin 和 P4Helix 现在我明白 我必须首先删除所有工作区 然后删除流 然后删除仓库 但我正在寻找解决此过程的方法 我个人觉得这很愚蠢 如果有人离开公司并且不想合作怎么办 有
  • 如何在两个不同的服务器之间移动 perforce 仓库,以便复制修订历史记录,但不复制用户信息和工作区?

    我需要将仓库从一台 Perforce 服务器复制到另一台 文件修订历史记录需要保持完整 但用户信息和工作区信息不能复制到新服务器 我已经尝试了标准检查点创建和恢复过程 但如果两台服务器上都存在同名的用户或工作区 源服务器将覆盖目标服务器上的
  • ai_socktype 不支持 Servname

    我正在使用 Vagrant 运行 Centos 虚拟机 机器似乎运行正常 但是当我尝试同步 Perforce 时 我可以看到以下错误 vagrant vagrant c5 x86 64 perforce p4 sync f Perforce
  • p4python:从仓库获取 diff2

    我想检索下一个命令的输出 其中 p4 是标准 perforce 客户端 p4 diff2 depot 1 depot 2 在终端中它会产生如下内容 depot bin build sh 1 xtext depot bin build sh
  • 使用 Perforce 代替 Subversion 有什么好处?

    我的团队使用 SVN 已有几年了 我们现在可以选择切换到 Perforce 做出这样的转变会有什么好处 和陷阱 P4 keeps track of your working copy on the server This means tha
  • P4 - 为客户更改工作空间

    我想使用 p4 命令行更改工作区客户端 但我不知道是否可能 您可以使用 p4workspace 命令创建 删除或编辑工作区 但我想使用 bat 方法更改当前工作区 示例 p4 c MyClient 更改工作空间 myNewWorkspace
  • Git:如何防止提交仅为调试目的而修改的文件?

    很多时候 我喜欢修改一些代码行以使调试更容易 但实际上我并不想提交它们 例如 我将通过注释掉某些代码行来禁用一些烦人的功能 例如广告 或者我将日志级别和过滤器设置为仅我关心的级别 或者我将强制条件为 true这样我想要运行的代码块实际上一直
  • p4和git之间有双向桥吗?

    是否有一个好的 可靠且自动化的 方法来为多个用户在 perforce 和 git 之间移动 git 更改 git p4 似乎可以很好地处理单用户情况 但我正在寻找多用户选项 目前 我们正在从多种不同的源代码控制系统转向单一的源代码控制系统
  • 如何将 perforce 用户更改为超级用户

    如何将标准 perforce 用户更改为超级用户 看到很多关于如果超级用户密码丢失该怎么办的问题 但没有看到关于如何创建另一个超级用户或授予当前用户超级用户权限的问题 您将需要更新该用户的 Perforce Protections 表 例如

随机推荐

  • CSS自定义组合框问题

    我需要一个自定义组合框 所以 我实施了ul 问题是我无法通过单击在顶部打开组合框列表button 展示的同时ul 它移动button到网页底部 Code ul width 100px background color rgb 224 224
  • 在 Emacs 中定义新的工具提示

    我想向 emacs 添加自定义工具提示 更具体地说 每当我将鼠标悬停在符号 函数 变量 名称上时 用我的鼠标我想看到带有符号定义的工具提示 我知道我可以使用 cscope 这样的工具找到此类信息 但我不知道如何找到 将 cscope 的输出
  • 运行烘焙命令时出现 SQLSTATE HY000 2002

    我在运行烘焙命令时遇到问题 我认为它与 mysql 有关 但我在 Stackoverflow 上没有找到此错误的任何解决方案 这是我的app php Datasources gt default gt className gt Cake D
  • Kafka的消息键有什么特别的地方吗?

    我没有看到任何提及消息键 org apache kafka clients producer ProducerRecord key 除了它们可以用于主题分区 我可以自由地将我喜欢的任何数据放入密钥中 还是有一些我应该遵守的特殊语义 该密钥似
  • 分组时间序列(面板)数据的交叉验证

    我使用面板数据 随着时间的推移 我观察许多单位 例如人 对于每个单元 我都有相同固定时间间隔的记录 当将数据分为训练集和测试集时 我们需要确保这两个集是不相交的并且顺序的 即训练集中的最新记录应该在测试集中最早的记录之前 参见例如此博客文章
  • 如何使用可用内存有效地比较 1,000 张图像

    这是一个棘手的问题 我的磁盘中存储了大约 1 000 张图像 我想通过成对比较来找到彼此相似的图像 所以我必须做周围1 000 999 2 https stackoverflow com questions 46958633 generat
  • 如何用 Java 以编程方式下载网页

    我希望能够获取网页的 html 并将其保存到String 这样我就可以对其进行一些处理 另外 我如何处理各种类型的压缩 我将如何使用 Java 来做到这一点 我会使用像样的 HTML 解析器Jsoup http jsoup org 那么就很
  • 如何通过部分名称查找文件夹和文件c#

    在我的硬盘驱动器的特定文件夹中 我存储了许多其他子文件夹和文件 现在我想按部分名称列出这些文件夹和文件名 for example c webapi xx folder c mvctutorial xx folder done webapi
  • Gradlew bundleRelease 不会在 React-Native 中生成发布 apk

    我尝试获取应用程序的apk 我以前也做过 效果很好 但是 我今天尝试使用其他应用程序的获取 apk 但它没有给我发布 apk 为什么 我跟着这些步骤 https facebook github io react native docs si
  • 如何更改 ComboFieldEditor 的内容?

    我想更改其中一个的值ComboFieldEditor取决于另一个ComboFieldEditor在 Eclipse 插件中 例如 如果用户更改package 需要在第二个中填充不同的类ComboFieldEditor The ComboFi
  • 如何拆分 XML

    我的第一篇文章在这里 我已经搜索过 但没有找到我要找的东西 我不太确定需要什么技术来完成以下操作 我使用 Mule 3 3 CE 我需要拆分 XML 文件 我需要在每个分割的 XML 中保留 rootElement 及其属性 所有 XML
  • 访问 Firestore 规则中的父文档字段

    我正在 Firestore 中实现一本食谱书 其中每个用户都可以查看所有用户创建的所有食谱 但只有食谱的原始作者才可以编辑或删除食谱 任何用户都可以创建新配方 我的问题是 我无法设置子集合的权限以 侦听 子集合父文档的字段 每个配方文档包含
  • 通过流式传输将分段文件上传到 Amazon S3 时内存使用率过高?

    我的 Java Spring 应用程序中的以下方法直接将文件流式传输并上传到 Amazon S3 存储桶 我研究过 使用流将使上传大文件 对于我的用例 gt 100MB 视频 更加内存有效 当使用 25MB 文件测试该方法时 Kuberne
  • 对组合和单独的多个 group_by 变量进行汇总

    我使用 dplyr 的 group by 和汇总来获取每个 group by 变量组合的平均值 但也想单独获取每个 group by 变量的平均值 例如 如果我跑 mtcars gt group by cyl vs gt summarise
  • 从 JSON 模式动态创建表单 [Angular 8]

    我正在努力从 Angular 8 中的 JSON Schema 创建动态表单 我找到了一些库 但是一个很旧 https github com dschnelldavis angular2 json schema form 上次提交约 2 年
  • DeprecationWarning:请使用 dns.resolver.Resolver.resolve()

    我使用resolver 作为socket 的替代品 因为我发现当多个连接建立到不同的IP时 它最终会停止工作 无论如何 它会向我返回一个警告 我应该使用dns resolver Resolver resolve 更改它时 它给我一个错误 T
  • 在erlang中打印数字的每个数字的问题

    我正在尝试编写一个程序 该程序将读入一个数字 然后将该数字的每个数字输出到列表中 然而 在我尝试使用数字 8 和 9 之前 大多数事情看起来都很好 该程序仅输出 b t反而 如果输入的数字包含8或9 同时还有其他数字 例如283 就可以正常
  • jqGrid:使用本地数据类型加载嵌套子网格时出现问题

    我正在尝试使用 jqGrid 和本地数据让嵌套子网格工作 我已经搜索了很多 但未能找到解决方案 这是我的代码的简化示例 var mainGridData main grid data id m1 col1 11 col2 12 id m2
  • 将工具提示添加到字体很棒的图标

    这里有人为字体很棒的图标添加了工具提示吗 我有关注 jsfiddle https jsfiddle net HarrietFiddles 1btr64kw 1 但似乎找不到向图标添加工具提示的指南
  • 在撤销之前混乱的集成后,无法从主分支完全集成到功能分支

    我正在使用 Perforce P4V 客户端 版本 2013 1 611291 日期为 2013 年 3 月 20 日 我尝试从主分支合并 集成到我的功能分支 我已经很久没有这样做了 所以大量的文件被添加到变更列表中 然后我解决了无法自动合