合并来自单独存储库的 Mercurial 分支

2024-01-06

我试图弄清楚如何将分支从单独的存储库合并到当前存储库中。

我有以下内容:

PJT1 - 包含默认分支和 foodog

PJT2 - 包含分支默认值

从 PJT2 开始,我执行以下操作:

$ hg fetch -y ../PJT1 -r foodog -m "this is a test"

现在,如果我查看 PJT2,我会看到正确的文件和更改。然而,我如果我这样做hg branches,我得到以下信息:

[someone@myhome pjt2]$ hg branches
foodog                         1:c1e14fde816b
default                        0:7b1adb938f71 (inactive)

and hg branch揭示了以下内容:

[someone@myhome pjt2]$ hg branch
foodog

如何从 PJT1 获取内容foodog分支到 PJT2default branch?


您需要合并,但请记住分支 foodog 上的更改将始终在 foodog 上 - 分支永远不会消失,但它们可以隐藏。此命令序列与您所要求的内容非常接近:

cd PJT2
hg update default # just in case you were somewhere else
hg pull ../PJT1 -r foodog  # that gets you foodog
hg merge foodog  # that merges the changes into default
hg commit # commit the merge
hg update foodog # go to the most recent change in foodog (note: it is not a 'head')
hg commit --close-branch

合并后hg branches仍会显示foodog除非你这样做hg branches --active它只显示有头的树枝。之后commit --close-branch你不会看到foodog除非你这样做hg branches --closed.

这是因为 Mercurial 中的分支永远不会完全消失(设计功能),因此它们通常只保留用于终生的事情,例如release-1.0 or stable。对于诸如错误和功能之类的短期工作,请考虑使用书签。这是两者的一个很好的比较:http://stevelosh.com/blog/2009/08/a-guide-to-branching-in-mercurial http://stevelosh.com/blog/2009/08/a-guide-to-branching-in-mercurial

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

合并来自单独存储库的 Mercurial 分支 的相关文章

  • 当主干/分支/标签结构混乱时,如何从 Subversion 迁移到 Mercurial?

    我想将存储库从 Subversion 转换为 Mercurial 但是当我最初设置存储库时 我以最懒的方式完成了它 随着时间的推移 该结构不断变形和恶化 此时已有 5 年历史 尽管如此 我还是想保留尽可能多的历史 即使我必须弄脏并手动将东西
  • 我可以在 Mercurial 中进行分支而不克隆存储库吗?

    最近 我开始尝试 Mercurial 因为它总是因其简单性和 正常工作 原则而吸引我 或者至少 其他人总是这么描述它 他们通常也将其描述为 实际上与 git 相同 只有一些你不会注意到的细微变化 只是我发现事实并非如此 我的汞分支有问题 如
  • 使用 Mercurial,我如何查看哪些更改尚未推送?

    我习惯了 git 你可以在其中运行 gitk 并得到如下内容 在这里您可以看到有一些更改需要推送到远程分支 或者 我可以使用git log decorate输出将是 b8c2926 refs heads next Update instru
  • bitbucket、“hg 推送”和“hg 更新”

    如果我从本地 Mercurial 存储库开始 我认为它是 主要 存储库 请原谅我的 dvcs 领主 并打算使用 bitbucket 作为备份和问题跟踪工具 我可以在本地进行所有更改repo 并执行 hg Push 将更改发送回 bitbuc
  • 有趣的是,当为 Mercurial 添加 .hgignore 时,该文件本身显示为“?”汞状态?

    正常吗 所以你只需要添加 hgignore到列表中忽略自身 是的 但你不想忽视 hgignore文件 当新人查看您的存储库时 您不希望他们获得您的忽略文件列表吗 相反 做hg add hgignore hg commit 底线 hgigno
  • 为 Eclipse 安装 Mercurial 插件时出错

    我刚刚为 Eclipse 安装了一个 Mercurial 插件 安装过程很顺利 但是安装后 当我重新启动 eclipse 时 显示错误 错误说 发生了多个 Mercurial 错误 请检查错误日志视图以获取详细信息 命令行 hg y deb
  • 在 Clearcase 上使用 Mercurial 时保留历史记录

    我在 ClearCase 商店工作 CC 在集成团队的工作方面做得很好 尽管我们的代码审查流程阻止我使用它来跟踪我的日常更改 在我的 CC 视图之上创建 hg 存储库效果非常好 我可以跟踪我的更改并轻松在文件服务器上进行备份 为人们生成差异
  • 协调多个依赖的 Mercurial 存储库版本的推荐方法?

    好吧 经过几个小时的阅读和反复试验 它终于击中了我 Mercurial 并不真正想做 SubRepos 至少不想与 TortoiseHg 和 Bitbucket 一起使用 如果我错了 并且您不希望对类似于 当然它有效 您没有阅读官方文档吗
  • 如何将 pip 指向 Mercurial 分支?

    我正在尝试通过 pip 将我的应用程序安装到 virtualenv 进行测试 安装时效果很好default or tip像这样 pip install e hg https email protected cdn cgi l email p
  • Mercurial日志接口

    我一直在浏览 hginit com 上的教程 但我发现了一个相当不方便的方面hg log特征 基本上 当我输入它时 我会在顶部看到最新的更改 在底部看到最旧的更改 但这很烦人 因为大多数时候 您希望看到最新的修订版 所以 假设我有 100
  • 如何克隆存储库并保留文件时间戳?

    如何从新机器上的服务器获取源代码的副本 但保留文件时间戳 通过以下步骤 所有时间戳均设置为当前日期 时间 手动创建存储库的根文件夹 光盘放入其中 执行一个hg init 使用 TortiseHg 将存储库从服务器克隆到文件夹 是否有一个选项
  • 如何使用 Mercurial 将文件夹与现有 Heroku 应用程序链接

    我在 Bitbucket 上有一个现有的 Django 应用程序 我能够部署到 Herokuhg git https stackoverflow com q 9591380 343834 每当我想在应用程序文件夹中运行一些 heroku 命
  • hg 语法的作用是什么:提交 A 是否可以从提交 B“到达”

    我的存储库的历史非常复杂 我经常发现自己想知道过去的某个提交是否 在 或 可从 某个修订 通常是我的头脑之一 到达 我该怎么做呢 您可以使用转速集语法 http selenic com hg help revsets 假设您想询问修订版 4
  • 如何使用 Mercurial 忘记所有已删除的文件

    我是 Mercurial 的新手 在清理项目中的图像文件夹后 我显示了大量文件 在 汞状态 中 我可以为每个输入 hg忘记 但必须有一个更简单的方法 那么我怎样才能告诉 Mercurial 忘记文件夹中所有已删除的 状态 文件呢 如果您也可
  • 如何在不访问 hg 的情况下提取 BitBucket 存储库

    我想知道是否可以在不访问 hg 的情况下将私人 Mercurial 存储库拉到服务器上 我有 SSH 访问权限 但无法安装 HG 我正在考虑某种使用 http 访问的 Python 脚本或其他东西 但我不确定 我还认为这可能只有通过公共回购
  • 如何解决这一 Mercurial 冲突?

    我对 Mercurial 和 Python 感到沮丧 因为它们让简单的事情变得困难 我有一个微不足道的冲突 由于 Mercurial 没有给出任何建议 我什至不知道如何解决这个微不足道的文件冲突 冲突是微不足道的 但如果我不能解决这个问题
  • 检查 url 是否为 Mercurial 存储库(如 git ls-remote)

    如何检查 URL 是否指向 Mercurial 存储库 对于 git 我会使用git ls remote url并检查返回值 hg 有类似的东西吗 您可以使用hg identify为此 它可以针对远程存储库运行 如果给定的路径不是存储库 M
  • 如何“hg merge”而不影响工作目录?

    假设 我有一个名为 MyRepo 的存储库 我的工作目录中有未提交的更改 我从 Repo1 进行拉取 并在 MyRepo 中创建一个分支 我想将我的仓库中已有的内容与我刚刚拉取的内容进行合并 如上所述here http mercurial
  • 在大型团队中使用 git VS Mercurial 和 Xcode 进行 iOS 开发有何优缺点?

    我们希望在一个项目上一起工作 签出 签入文件 一些开发人员推荐 git 其他开发人员更喜欢 Mercurial 有没有人对这两者都有经验 并且能告诉我为什么我应该花时间在不与 Xcode 集成的 Mercurial 上 而不是只使用集成的
  • 如何使 Mercurial 按提交日期对“hg log”的输出进行排序?

    我怎样才能使 Mercurial 排序输出hg log按提交日期 输出似乎是按我将提交拉入存储库的日期而不是提交的时间排序的 您需要使用转速集 hg log r sort all date 如果您想首先查看最近的提交 请执行以下操作 hg

随机推荐