没有父母的反复无常的修订意味着什么?

2024-04-14

我有一个 Mercurial 存储库,现在处于奇怪的状态。这就是 TortoiseHG 中的样子:

我认为这是不可能的。修订版 54 的父级为“-1 (000000000000)”(即无)。显然,我对 Mercurial 还有些不明白,任何人都可以让我知道这意味着什么 - 以及它必须发生什么才能进入这种状态。据我所知,它只是推送和拉出一些东西——而且没有人使用任何古怪的扩展。

修订版 54 和 55 只是添加标签,但如果我“更新 -C”到修订版 54,我最终只会得到 .hgtags 文件。

我已经从修订版 53 克隆了一个来解决这个问题。但我宁愿了解这里发生了什么,这样我就可以避免再次发生。


当你看着变更集的定义 https://web.archive.org/web/20150909233855/https://mercurial.selenic.com/wiki/ChangeSet, 你看:

每个变更集都有零个、一个或两个父变更集:

  • 如果提交是合并,它有两个父变更集。
  • 如果变更集是存储库中的根,则它没有父级。
    一个存储库中可能有多个根(通常只有一个),每个代表一个分支的开始.

“更新”回已有子变更集,更改文件,然后提交创建一个新的子变更集,从而启动一个新分支。可以命名分支。

所以也许这就是你所做的:

  • 更新回 53(当时已经有自己的子“54”)
  • 改变文件
  • committing, thus starting a new branch from 54, with no parent
    (that would make a second commit with the same parent)

or:

  • comitting 53 with a --close-branch option https://web.archive.org/web/20150912111705/https://mercurial.selenic.com/wiki/PruningDeadBranches,
  • 潜在的新提交(无需切换回另一个分支)可能会开始一个新的提交

Ry4an https://stackoverflow.com/users/8992/ry4an-brase(一位真正的 Mercurial 专家;))插话并评论:

--close-branch除了从列表中隐藏分支之外不做任何事情,并且下次您在该分支上提交时它会被撤消。它不会创建多个根。

VonC 的诊断是正确的,多头.
但没有组合'update' and 'commit'会让你进入那种状态。
为了最终获得多个根,通常会执行“hg pull' 来自仓库并使用--force覆盖“unrelated repositories“ 警告。


(“无父级”,意味着父级 ID 设置为 00000,请参阅“幕后” http://hgbook.red-bean.com/read/behind-the-scenes.html:

alt text
(source: red-bean.com http://hgbook.red-bean.com/read/figs/revlog.png)
)

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

没有父母的反复无常的修订意味着什么? 的相关文章

  • hg 相当于 git 笔记

    Mercurial 中是否有一个类似于 git Notes 的命令 据我所知 情况并非如此 我认为 Hg 还没有一种特殊的对象可以与提交消息关联 引入于2007年7月 http kerneltrap org mailarchive git
  • PyCharm:版本控制 .idea 文件夹,同时在开发人员之间保留不同的解释器

    我们使用 PyCharm 作为项目的 Python IDE 开发人员使用不同类型的操作系统设置 例如 python 路径对于我们中的某些人来说是不一样的 有些人将本地解释器存储在不同的位置或远程解释器 不幸的是 python解释器路径存储在
  • 在 Mercurial 中移动分支起点

    我的问题类似于Mercurial 搬迁至新分支 https stackoverflow com questions 4665549 mercurial move changes to a new branch 但并不完全相同 我的一位同事开
  • Go的修订历史背后有什么故事?

    我注意到前 4 次修订f6182e5abf5e b66d0bf8da3e ac3363d7e788 172d32922e72Go 源代码都早在 Golang 被提出之前就已经存在了 最古老的是1972年 https github com g
  • 在处理其他事情时如何将一堆未提交的更改放在一边

    如果我有一堆未提交的更改 并且想在处理其他事情时将其放在一边 然后稍后 例如几天后 返回并继续工作 完成此任务最简单的工作流程是什么 到目前为止我只体验过 Mercurial 的基本功能 我通常的方法是使用克隆创建一个新分支 但可能有更好的
  • Git/Mercurial (hg) 意见 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 首先声明 我不是一个专业的程序员 而是一个有需要并且必须学习的工程师 我总是独自工作 所以只有我和我的七个分裂人格 我们作为一个团队工
  • 服务器和本地之间的 Mercurial?

    我正在进行一个门户开发工作 我有时会遇到一些麻烦 例如丢失 覆盖错误的文件等 所以我决定使用 Mercurial 来进行此开发 我第一次使用源代码管理的经历 我在这个项目的服务器 bluehost 上工作 有什么办法可以在本地保存更新备份吗
  • 你已经从颠覆转向善变了吗?值得付出努力吗?

    我正在更好地了解 Mercurial 版本控制系统 并且正在考虑从 SVN 进行转换 有人已经转换了吗 对于您和您的团队来说 转变是否困难 您能否给出一些建议 是继续使用 SVN 还是选择 Mercurial 一旦开始 你就永远不想回去 优
  • “中止:没有名为选择器的模块!”将 Mercurial 存储库推送到 Git 存储库时

    我正在尝试将 Hg 存储库转换为 Git 存储库 两者都是私有存储库 我已按照以下步骤操作 参考 http arr gr blog 2011 10 bitbucket converting hg repositories to git 第
  • 有条件的 Mercurial 忽略文件

    我在 Mercurial 中有一个文件 我希望开发机器提取该文件 但我希望部署服务器不提取该文件 它具有开发机器没有的特殊模块 这是可能的 还是我应该有一个自定义的推送到服务器解决方案 而不是仅仅进行 hg pull 执行此操作的典型方法是
  • TortoiseHg无法提交--“系统找不到指定的文件”

    我刚刚选择了 TortoiseHg 用于 Windows 上的分布式源代码控制 并将其安装在我的 C 驱动器上 然后我创建了一个存储库 位于 D projects 中 当我尝试提交更改时 它给了我错误 abort None 系统找不到 指定
  • 私人变更的用例

    假设我有以下场景 我克隆了一些开源项目 例如从 URL X 克隆的项目 现在我有了它的本地克隆 我对本地克隆进行了一些更改以尝试并在本地提交它们 现在我想要的是以下内容 我想从开源项目 X 获取更新 只需获取其所有最新代码 无需我进行任何更
  • Mercurial 工作流程是否可以通过未提交的更改进行更新?

    因此 我的网站从 CVS 切换到 Mercurial 我遇到的最大问题是 如果我正在处理一些我不想提交的文件 我只需保存它们 然后我还有其他文件想要推送到服务器 但是如果其他人已经制作了对存储库进行更改 然后我将它们拉下来 它要求我合并或变
  • Mercurial:虚拟合并后分支特定的更改不断返回

    我有一个 Mercurial 存储库 有两个永久分支 默认分支和 UAT 每隔一段时间 我们就会将应用程序的新版本部署 升级 到 UAT 环境 并通过将稳定的默认提交合并到 UAT 分支来实现这一点 有时 UAT 分支中的错误会得到修复 并
  • 如何让 git 在 vi​​m 中显示更改,就像 hg 使用 hgeditor 脚本那样?

    Mercurial 的一个有趣的功能是能够查看将在 vim split 中提交的更改 请参阅VIM 中的 DiffsInCommitMessage https www mercurial scm org wiki DiffsInCommit
  • Mercurial 子存​​储库 - 管理更复杂的依赖关系层次结构

    我有一个主项目 它使用相当标准的源代码树方法 Mercurial 子存 储库 Master lib compiled binaries things like log4net AutoFac etc source VS solution o
  • 将带有子存储库的 Mercurial 存储库迁移到 git 并保留历史记录的最佳方法?

    我正在尝试将 Mercurial 存储库迁移到 git 但问题是 Mercurial 存储库有子存储库 有些带有分支 以及大量合并和分支本身 我希望最终的 git 存储库能够保留所有这些历史记录 并且在检查存储库或其他分支的早期部分时保持正
  • 将 CVS 升级到 git/hg 的技巧?

    我们仍然使用 CVS 我使用 git 和 hg 供我个人使用 尽管我对这两个工具仍然是新手 但我意识到它们更现代 更好 更快 分布式等 只是每个人都如此习惯 CVS 以至于我觉得如果我是推荐并实际将我们当前的 CVS 服务器升级 移植 转换
  • 正在搜索 Mercurial 存储库 (TortoiseHG)?

    有什么方法可以输入特定的文件名 例如 xyz txt 并使用 TortoiseHG 在 Mercurial 存储库中搜索该文件的任何签入 如果没有 为什么不呢 这不就是版本控制的用途吗 在 Hg Repository Explorer 窗口
  • DVCS命令的统一

    当处理多个 开源 项目时 多个版本控制系统开始出现问题 虽然它们共享共同的操作 但我经常在输入时犯错误hg add反而git add 我记得前段时间看到过一个项目 通过提供基本命令以统一的方式访问不同的源代码控制软件提交 ci add等在外

随机推荐

  • 将 JSON 时间戳字符串转换为 pandas dataframe 中的 python 日期

    我有一个从 JSON 读取的 pandas 数据框 其中一个日期列是一种奇怪的时间戳格式 如下所示 日期 1405961743000 0100 如何将整列转换为 python 日期 我已经能够使用 datetime 手动将该日期转换为 py
  • Android ToggleButton 自定义样式未应用

    我跟着这个例子 http www mokasocial com 2011 07 sexily styled toggle buttons for android 用于将一些自定义主题应用于我的切换按钮 但是当我运行我的应用程序时 我看到通用
  • 如何在 AWS API 调用中使用“NextToken”

    我遇到了一个小问题 我真的很难理解它是如何工作的 我正在编写一个工具 它基本上执行描述组织来收集我们的 AWS 组织中的所有帐户 根据文档here https boto3 readthedocs io en latest reference
  • 解决IContainer

    从应用程序的类内部获取 Autofac 容器的建议方法是什么 Autofac 是否提供解析类上的 IContainer 属性 或者在构建容器后是否需要全局存储该容器 你需要IComponentContext or ILifetimeScop
  • OpenCV 从相机捕获 YUYV,无需 RGB 转换

    我尝试使用 openCV c 从 LI USB30 V024 立体相机捕获左右图像 而不自动将其转换为 RGB 相机输出 YUYV 格式的图像 我尝试使用 videoCapture set CV CAP PROP CONVERT RGB f
  • 带有 *ngIf 内部的模板,更改模型后不起作用

    Problem Angular 2 2版本之后 我注意到我的应用程序的某些组件存在问题 即更新数据后 视图中的数据错误 它显示了正确大小的列表 但仅包含第一项的数据 示范 我创建这个 Plunker 有一个简单的例子 http plnkr
  • Chrome 屏幕截图仅在首先单击扩展程序时有效

    因此 我尝试编写一些代码 以便在按下我的网站上的按钮时可以截取页面的屏幕截图 代码可以工作 但唯一的问题是我必须先单击 chrome 扩展 然后才能单击按钮来截取屏幕截图 我猜这是因为活动选项卡未被调用 有任何想法吗 这是错误消息 运行 t
  • C# 如何将整型的项隐式转换为 double 的项?

    是否有任何 C 规范说明如何隐式转换整型类型的项 例如 int 的条款double应该可以工作吗 如果是这样 有人可以告诉我算法或指导我吗 C 6 0 规范草案 https learn microsoft com en us dotnet
  • 你能在 C 中#define 注释吗?

    我正在尝试做一个调试系统 但它似乎不起作用 我想要完成的是这样的 ifndef DEBUG define printd else define printd printf endif 有没有办法做到这一点 我有很多调试消息 但我不喜欢这样做
  • 编写一个简单的自定义编辑器需要多快?

    简单地说 我的意思是有按钮 bold italic 编号列表 要点列表 向左缩进 右缩进 拼写检查 显然由现成的 js 组件支持 我所说的自定义是指 拥有自定义图标 所以实际上只是自定义设计 无框架 从头开始编写 轻量级 兼容主流浏览器 这
  • ViewChild 与输入/输出 - Angular 最佳实践 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在我看来 几乎在所有我们指定组件的情况下 Inputs Output我们也可以没有任何 Inputs Outputs 而是使用 ViewChil
  • PySpark 将列除以其总和[重复]

    这个问题在这里已经有答案了 我试图将 PySpark 中的列除以它们各自的总和 我的数据框 此处仅使用一列 如下所示 event rates 1 10 461016949152542 2 10 38953488372093 3 10 609
  • heroku 应用程序在推送后仍然引用旧文件

    我最近在 Heroku 中遇到了这个非常奇怪的问题 我在本地开发和测试 然后将更改推送到 Heroku 尽管推送的文件已经更改 Heroku 确实识别了它并推送了新文件 但当我查看 Heroku 上的确切网页时 它的行为就好像它仍在使用我刚
  • 在 Xamarin iOS 中使用 Firebase Crashlytics

    任何人都可以帮助我如何使用适用于 Xamarin iOS 的 Xamarin Firebase iOS Crashlytics nuget 包 我的代码中随机出现 SIGSEGV 代码错误 但我无法找出实际问题 已经搜索了很多关于如何在 X
  • 如何在java swing中为某个类型的所有组件设置UI?

    我创建了自己的MyScrollbarUI类在我的应用程序中具有自定义滚动条外观 现在我必须做 scrollPane getHorizontalScrollBar setUI new MyScrollbarUI scrollPane getV
  • 用于渲染大量数据的表格设计 Angular

    我是角度新手 期待创建一个将呈现大量数据的表 下面是我试图实现的表中的功能 有人可以指导如何解决这个问题吗 有没有实现它的开源项目 或者好的资源 通用搜索按钮可在所有列中搜索并在表格中显示结果 用户可以显示和隐藏某些列 选定列上的预填充过滤
  • 仅 CSS 视差滚动停止在 IOS/IPadOS 13 上工作?

    好吧 我在网络开发领域还是个新手 几个月前 我仅使用 CSS 视差滚动完成了自己的网站 iOS13 出现了一些问题 对于视差效果 我使用了描述基思 克拉克 https keithclark co uk articles pure css p
  • 拖动 Vuetify v-data-table 中的列

    我想在 v data table 中通过标题拖动列 我已经使用指令 sortablejs 取得了很大的进展 但我无法弄清楚以下内容 我不确定当 列数与 列数不匹配时如何解释 使用 colspan someNumber 时可能会发生这种情况
  • 如何从 youtube-dl --write-auto-sub 下载转换混乱的 .vtt 子文件?

    我的目标是在单独的文件中下载带有自动生成字幕的 YouTube 视频 例如 vtt srt etc 我目前正在努力实现这一目标youtube dl但如果需要的话 我愿意接受其他解决方案 当我运行以下命令时 它将视频下载为 mp4 这很好 和
  • 没有父母的反复无常的修订意味着什么?

    我有一个 Mercurial 存储库 现在处于奇怪的状态 这就是 TortoiseHG 中的样子 我认为这是不可能的 修订版 54 的父级为 1 000000000000 即无 显然 我对 Mercurial 还有些不明白 任何人都可以让我