Mercurial:如何才能只看到合并引入的更改?

2024-02-05

我正在努力养成进行代码审查的习惯,但是合并使这个过程变得困难,因为我不知道如何要求 Mercurial“仅显示合并引入的更改,这些更改在其父级中都不存在”。

或者,稍微正式一点(感谢 Steve Losh):

显示合并中在其父项中不存在的每个块,并显示在其父项中存在但在 3 中也不存在的每个块。

例如,假设我有一个包含两个文件 a 和 b 的存储库。如果“a”在修订版 1 中更改,“b”在修订版 2 中更改(位于单独的分支上),并且这两个更改在修订版 3 中合并,我将得到如下所示的历史记录:


    @    changeset:   3
    |\   summary:     Merged.
    | |
    | o  changeset:   2
    | |  summary:     Changing b
    | |
    o |  changeset:   1
    |/   summary:     Changing a
    |
    o  changeset:   0
       summary:     Adding a and b  

但如果我要求查看修订版 3 引入的更改,hg di -c 3, Mercurial 会向我显示相同的内容,就像我要求查看修订版 1 中引入的更改一样,hg di -c 1:


    $ hg di -c 3
    --- a/a     
    +++ b/a     
    @@ -1,1 +1,1 @@ 
    -a 
    +Change to a
    $ hg di -c 1
    --- a/a     
    +++ b/a     
    @@ -1,1 +1,1 @@ 
    -a 
    +Change to a  

但是,显然,这不是很有帮助 - 相反,我想被告知修订版 3 没有引入新的更改(或者,如果合并期间出现冲突,我只想看到该问题的解决方案)冲突)。就像是:


    $ hg di -c 3
    $  

那么,我该怎么做呢?

ps:我知道我可以使用以下方法减少存储库中的合并数量rebase......但这不是我的问题 - 我的问题是弄清楚合并改变了什么。


简短的回答是:您无法使用任何现有的 Mercurial 命令来执行此操作。

Running hg diff -c 3将向您展示之间的变化3及其第一个父级——即您运行时所处的变更集hg merge.

当您将分支视为不仅仅是简单的变更集时,这是有道理的。当你跑步时hg up 1 && hg merge 2你告诉 Mercurial:“合并变更集2进入变更集1".

如果您使用命名分支,那就更明显了。说变更集2在你的例子中是在一个名为的命名分支上rewrite-ui。当你跑步时hg update 1 && hg merge rewrite-ui你实际上是在说:“合并rewrite-ui分支到当前分支。”当您稍后运行时hg diff -c在此变更集中,它向您展示了引入的所有内容default分支(或任何分支1碰巧是通过合并),这是有道理的。

不过,从你的问题来看,你似乎正在寻找一种表达方式:

向我显示此变更集中在其父项中不存在的每个块,并向我显示在其父项中不存在的每个块3.

这不是一件简单的事情来计算(我什至不确定我现在是否得到了描述)。不过,我绝对可以看到它有什么用,所以如果你能明确地定义它,你可能会说服我们其中一位阅读过 SO 的 Mercurial 贡献者来实现它。

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

Mercurial:如何才能只看到合并引入的更改? 的相关文章

  • 如何将 Mercurial 存储库克隆到已存在的目录中?

    我有一个客户的 Django 项目 正在本地开发 使用 Mercurial 进行版本控制 我将本地存储库推送到我的个人远程服务器 我保存所有项目的地方 然后当我部署它时 在任何 Web 服务器上 我从我的个人服务器克隆该存储库 这在大多数服
  • PHP 按值合并数组以获得 2 个不同的数组值

    我尝试将两个不同的数组合并为一个数组 有人可以帮我吗 我有这样的数组 0 Array 2 rank 579 id 1 1 Array 4 rank 251 id 2 0 Array 2 size S rank 251 1 Array 15
  • 如何有效地合并两个 BST?

    如何合并两个二叉搜索树并保持BST的性质 如果我们决定从树中取出每个元素并将其插入到另一个元素中 则此方法的复杂度将为O n1 log n2 where n1是树的节点数 比如T1 我们已经拆分了 并且n2是另一棵树的节点数 比如T2 执行
  • 连接两个 Git 存储库的历史记录?

    我有一个旧的 Git 存储库 请调用它app 然后 一年后 我想从头开始重建应用程序 所以我创建了一个新的存储库 称之为app 2 现在 我意识到我应该创建一个新分支或其他东西 而不是一个新的存储库 因为我想移动app 2在之上app然后摆
  • Python:合并嵌套列表

    初学者在这里 我有 2 个要合并的嵌套列表 list1 a b c d e f g h list2 p q r s t u v w 我正在寻找的输出是 list3 a p q b c r s d e t f g h u v w 这可以在没有
  • 与 data.table 合并时防止重复列

    我有两个数据表 它们的列名部分相似 dfA lt read table text A B C D E F G iso year matchcode 1 0 1 1 1 0 1 0 NLD 2010 NLD2010 2 1 0 0 0 1 0
  • 在 Pandas 中,如何从基于另一个数据框的数据框中删除行?

    我有 2 个数据框 一个名为 USERS 另一个名为 EXCLUDE 他们都有一个名为 电子邮件 的字段 基本上 我想删除 USERS 中包含 EXCLUDE 中包含电子邮件的每一行 我该怎么做 您可以使用boolean indexing
  • 如何使用 R 将每个文件的数据添加为附加行,从而将不同的 .csv 文件合并为一个完整的文件?

    我有几个不同的文件夹 它们都包含一个 csv 文件 所有这些 csv 文件都有一个单独的列 其中包含实验的一种条件的数据 我想以将每个文件的数据添加为新列的方式合并这些 csv 文件 目前 它看起来像这样 C1 csv 102 106 15
  • 如何在 R 中合并同名列表中的数据框?

    我有一个包含很多数据框的列表 如果它们具有相同的名称 我想合并它们 即合并所有具有相同名称 a 和 b 的数据框 像这样 a lt aaaaa b lt bbbbb c lt ccccc g lt list df1 lt data fram
  • Git 将一个分支合并到所有其他分支中

    我知道这个问题已经在这里被问过 https stackoverflow com questions 2329716 merging changes from master into all branches using git https
  • 使用 Windows 网络共享目录时 Hg 存储库损坏

    我希望我能在这里得到一些帮助 因为 SO UX 比 Mercurial 邮件列表更好 多年来我一直在家里愉快地使用 Mercurial 我还将它与 Bitbucket Cloud 一起用于一些更严肃 但仍然是爱好 的项目 去年 我将我的团队
  • GIT 或 SVN 或...适用于前端开发人员

    我最近开始将一些项目导入到工作中的 Subversion 存储库中 在接下来的几周内 我希望团队中的每个人都能负责自己的源代码控制管理 我选择 SVN 而不是 GIT 的原因是我想要everyone团队中的人员 包括设计师 前端人员 集成商
  • 如何在 IIS 上设置 Mercurial 和 hgweb?

    我一直在寻找关于如何让 hgweb 在 IIS 上工作的不错的说明 但我没有发现太多有价值的信息 There s 这个 一步一步 https www mercurial scm org wiki HgWebDirStepByStep在 Me
  • merge.zoo 删除时区

    的结果merge zoo与其输入的时区不同 考虑下面的例子 library zoo zoo a zoo data frame a 1 5 seq as POSIXct 2014 01 01 00 00 01 tz UTC as POSIXc
  • 如何在data.table中使用OR条件连接表

    在 data table 中是否可以使用 OR 条件连接表 例如 library data table X lt data table x c a b c d e f y c 1 1 2 2 3 3 z c 10 11 12 13 14 1
  • 提高 Pandas 合并性能

    正如其他帖子所建议的那样 我特别没有 Pandas Merge 的性能问题 但我有一个类 其中有很多方法 可以对数据集进行大量合并 该类有大约 10 个 group by 和大约 15 个 merge 虽然 groupby 相当快 但在类的
  • Git:如何维护项目的两个分支并仅合并共享数据?

    假设我有一个项目的两个分支 IMClient MacOS 和 IMClient Windows 它们的代码仅 比方说 一个目录 main 有所不同 所有其他目录都包含与系统无关的代码并且可以互换 有些工作人员在 Windows 版本上工作
  • 在 python pandas 中将级别附加到列索引

    我有几个具有相同列的数据框 我只想在它们的索引上合并 print df1 out Value ISO Id 200001 8432000000 USD 200230 22588186000 USD 200247 4633000000 USD
  • 使用 Mercurial 自动构建的版本编号

    我们最近从 SVN 切换到 Mercurial 我们还设置了一个 CruiseControl NET 来运行自动构建 它从源代码控制中获取最新信息并构建应用程序 在用于自动构建的 CruiseControl NET 仪表板中 我们希望显示版
  • 合并来自并行 Subversion 存储库的更新代码

    我想知道人们在将实时 持续更新的 SVN 存储库与离线存储库 更新频率较低 合并时通常会采取哪些步骤 以我的场景为例 不久前我下载了BugTracker NET系统 当时它的版本是3 2 3 随后我对我们业务的代码进行了一些增强 我们使用

随机推荐

  • php 返回无效的 json

    以下 php 代码返回无效的 json 错误 不知道为什么
  • MySQL 查询检查一列中的两个值

    我正在编写一个查询 其中列中有 4 种类型 Xtype P C D R 我想查一下在哪里Xtype P and Xtype D那么如何将两者用于同一列呢 我知道我可以使用不同的列WHERE id 1 AND status online但不确
  • R:将 LIME 应用于 Quanteda 文本模型的问题

    这是我的修改版本上一个问题 https stackoverflow com q 50273919 6327771 我正在尝试在我的设备上运行 LIMEquanteda依赖的文本模型特朗普和克林顿推文数据 https www kaggle c
  • sed/awk + ​​regex 删除第一个字段匹配的重复行(ip 地址)

    我需要一个解决方案来删除第一个字段是 IPv4 地址的重复行 例如 我在文件中有以下行 192 168 0 1 text1 text2 192 168 0 18 text03 text7 192 168 0 15 sometext some
  • C# 和 SQL Server 2008 CLR 序列化问题

    我正在尝试创建一个SqlUserDefinedAggregate用 C 附加到我的 SQL Server 2008 实例 我正在使用 NET 3 5 基本上 我想计算看到字符串值的次数 由于用途 它确实需要是一个聚合函数 该函数的代码在逻辑
  • 数据框和子图中的日期错误

    我正在尝试在 csv 文件中绘制数据 目前 如果我要转换它 我的日期也不会在图中正确显示 如何更改它以显示 Y m d 定义的正确数据格式 第二个问题是 我目前正在一个图中绘制所有数据 但希望为每个 Valuegroup 绘制一个子图 我的
  • 如何在 Perl 中删除与特定模式匹配的行?

    我想做类似的事情sed在 Perl 中 即能够删除与特定模式匹配的行 鉴于此输入 abcd edfd abcd derder abcd erre 我想删除包含的行bc 我怎样才能做到这一点 我必须在 Windows 上使用双引号 perl
  • Python - 显示 csv 文件中具有重复值的行

    我有一个包含几列的 csv 文件 其中一列填充了随机数 我想在那里找到重复的值 如果有 奇怪的情况 但这毕竟是我想要检查的 我想显示 存储存储这些值的完整行 为了说清楚 我有这样的事情 第一 无论什么 230 无论什么 等等第二个 任意 1
  • HttpMediaTypeNotAcceptableException

    我的 jQuery 函数有问题 我想要实现的是在列表框中填充数据 JavaScript 函数 function load getJSON findAdminGroupsURL ajax true function data var html
  • FPS 极低,我应该使用什么分析应用程序来查找性能问题?

    我正在创建 XNA 游戏 但得到了意想不到的结果 FPS 极低 大约 2 12 fps 我应该使用什么程序来测试性能并找出导致性能下降的原因 你有没有尝试过使用SlimTune http code google com p slimtune
  • Android:在RelativeLayout的onTouchEvent中看不到ACTION_MOVE/UP

    我注册了一个相对布局的监听器 见下文 我想添加一些自定义事件处理 mOnTouchListener new OnTouchListener Override public boolean onTouch View view MotionEv
  • 如何删除在composer中保存的用户名和密码(laravel 4)

    我已经使用 Composer 更新了我的 Laravel 供应商 我购买了一个位于 github 私人仓库中的软件包 在下载作曲家询问用户名和密码时 我输入了错误的密码 因此出现错误 之后我再次运行composer update 但这次它只
  • React useEffect 清理函数意外调用

    我正在创建一个自定义挂钩来在表单提交时获取 api 我在 useEffect 挂钩内进行 api 调用 并且我有一个减速器来处理挂钩的状态 其中一个州是trigger首先设置为 false 来控制 useEffect 是否执行任何操作 重点
  • Spyder 不运行代码中的新更改

    我正在尝试使用 Spyder 3 2 4 通过 Anaconda 更新 Python 3 6 代码 但是当我对正在处理的代码进行更改并尝试运行它时 它将运行我启动会话的代码 有谁知道这个问题有什么解决办法吗 更改您正在处理的 py 目录 右
  • 窗口最小化时,页面可见性 API 在 Chrome OS X 上不起作用

    根据 Google 的文档 他们已经实现了 Page Visibility API https developers google com chrome whitepapers pagevisibility https developers
  • Android应用程序与三星和wiko的兼容性问题

    目前我的应用程序有一个小问题 在大多数设备上一切正常 但在某些三星和 wiko 上我收到此错误 java lang NoClassDefFoundError android support v7 internal view menu Men
  • 片段示例中的 Android ListView [重复]

    这个问题在这里已经有答案了 在哪里可以找到使用示例ListView in Fragment 我知道样本中有一个例子 但不幸的是我找不到它 也许你可以建议一些东西 你的 Fragment 可以子类化列表片段 http developer an
  • Ubuntu graphviz 'sfdp' 不工作

    我正在尝试做一些Networkx Graphviz graphs 运行后 pos nx graphviz layout G prog sfdp 发生错误 说 Error remove overlap Graphviz not built w
  • Flutter桌面支持自定义文件扩展名

    我在尝试着支持自定义文件扩展名和我的颤振桌面应用程序 我没有找到任何相关内容 因为我来自移动开发 所以我不知道如何做到这一点MacOS 和 Windows Linux 一旦达到稳定 你能帮助我吗 这就是我要的 您单击目录中的 abc 文件F
  • Mercurial:如何才能只看到合并引入的更改?

    我正在努力养成进行代码审查的习惯 但是合并使这个过程变得困难 因为我不知道如何要求 Mercurial 仅显示合并引入的更改 这些更改在其父级中都不存在 或者 稍微正式一点 感谢 Steve Losh 显示合并中在其父项中不存在的每个块 并