从 python hook 调用 Mercurial 命令(“hg update”)

2023-12-26

我在 Windows 2008 64 位和 IIS 上设置了 Mercurial hgweb。存储库的位置是网络共享。

我想在存储库上创建一个挂钩,以在更改组上发出“hg update”命令。我无法使用外部挂钩,因为这会以网络共享作为工作目录启动 cmd.exe(并且 cmd.exe 不支持网络共享)。

因此,我正在寻找一个调用 Mercurial 命令的 python 钩子示例。我注意到有一个 Mercurial.commands 模块,但我在网上找不到任何示例,而且我对 Python 的经验也不是很多。

是否有任何使用 Python 挂钩调用 Mercurial 命令的示例 - 是否可以在 hgrc 中完成这一切,或者我是否需要外部 .py 文件?


你需要一个外部.pyPython 扩展的文件。要像从命令行调用 Mercurial 一样使用内部 API,请使用

 from mercurial.dispatch import dispatch, request
 dispatch(request(['update']))

这是Mercurial 1.9之后的语法。在早期版本中,您将使用

 from mercurial.dispatch import dispatch
 dispatch(['update'])

您传递到的列表request or dispatch是以下参数hg在命令行上。

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

从 python hook 调用 Mercurial 命令(“hg update”) 的相关文章

  • Git/Mercurial (hg) 意见 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 首先声明 我不是一个专业的程序员 而是一个有需要并且必须学习的工程师 我总是独自工作 所以只有我和我的七个分裂人格 我们作为一个团队工
  • Mercurial:保持两个分支同步但存在某些持久差异?

    我是一名使用 django 自己工作的 Web 开发人员 我正在尝试了解如何最好地使用 Mercurial 部署网站 我想要的是能够保留一个可用于生产和开发工作的存储库 生产 开发之间总会存在一些差异 例如 它们可能使用不同的数据库 开发总
  • 没有父母的反复无常的修订意味着什么?

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

    我更喜欢在 hgignore 文件中使用 glob 语法 但现在我需要创建一个根模式 我想忽略我的 static 目录 但不想忽略 assets static 线路 static 忽略两者 有没有办法实现根全局模式 如果没有 我可以切换到正
  • 私人变更的用例

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

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

    默认情况下 在 Windows XP 上 Mercurial 将 hgrc 文件存储在 好吧 就我而言 c Documents and Settings srooks 我如何更改该位置 并让它在其中查找 hgrc 文件 例如 c Confi
  • .hgignore 语法仅忽略文件,而不忽略目录?

    我有一个我似乎无法理解的问题 我在 Windows 上使用 TortoiseHg 版本 0 7 5 但在 Linux 上我遇到了同样的问题 这里是 My hgignore file syntax regexp 我想要实现的是将 hg 存储库
  • 是否可以更改 Mercurial 中的默认 diff 工具?

    每次我做一个hg diff file ext我最终使用了控制台差异应用程序 我想使用 Kdiff3 或 WinMerge 我使用的是 Windows 有办法改变吗 我在 Mercurial 文档中找不到参考 我不是在谈论合并 我已经使用 M
  • 如何在 cygwin 下配置 Mercurial 以使用 WinMerge 进行合并?

    当 Mercurial 在 cygwin 下运行时 弄清楚如何生成有点棘手WinMerge http winmerge org 来解决合并冲突 我怎样才能做到这一点 诀窍是 cygwin 路径与 Windows 路径不同 因此您需要一个小脚
  • 有趣的是,当为 Mercurial 添加 .hgignore 时,该文件本身显示为“?”汞状态?

    正常吗 所以你只需要添加 hgignore到列表中忽略自身 是的 但你不想忽视 hgignore文件 当新人查看您的存储库时 您不希望他们获得您的忽略文件列表吗 相反 做hg add hgignore hg commit 底线 hgigno
  • 如何在 Mercurial 中查看文件的先前版本

    我正在使用 Mercurial 对目录中的几个文件进行版本控制 假设我有 10 次提交 10 个变更集或修订 我只想查看特定文件 例如 thisFile py 在其第七个修订版中的外观 我不想恢复到这个旧版本 我不想对之前的版本进行任何更改
  • 如何在 Mac OS X 10.8 上安装 hg Convert 所需的 python subversion 绑定?

    我正在寻找一种解决方案 最好是干净且简单的 以启用hg convert使用 SVN 存储库在 OS X 10 8 上工作 目前 如果您尝试转换 SVN 存储库 您将得到一个could not load Subversion python b
  • DVCS命令的统一

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

    当我们将 Mercurial 功能发布存储库中的更改合并到主干存储库时 我们总是会与 Maven POM 文件 pom xml 和 Mercurial hgtags 文件发生冲突 我们总是想保留主干版本 我们永远不需要功能发布存储库版本 有
  • 协调多个依赖的 Mercurial 存储库版本的推荐方法?

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

    我正在尝试通过 pip 将我的应用程序安装到 virtualenv 进行测试 安装时效果很好default or tip像这样 pip install e hg https email protected cdn cgi l email p
  • GIT 或 SVN 或...适用于前端开发人员

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

    我从 code google com 上托管的项目创建了一个 服务器 克隆 我从我的机器中的该存储库创建一个克隆并推送一些更改 一切顺利 现在主存储库有一些更改 我想拉取它们 如何使用这些更改更新我的 服务器 克隆 hg pull u go
  • Mercurial日志接口

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

随机推荐

  • codeSandBox (React/Node) 的 Http 请求错误

    我在 CodeSandBox StackBlitz 等在线 IDE 中遇到奇怪的错误 我做了一个示例 http 请求 使用 axios 但使用 fetch 或其他问题是相同的 并尝试在控制台中打印响应 我在前端使用 React 在后端使用
  • 在 foreach 循环外部使用 foreach 循环的变量

    我有一个 foreach 循环 我在循环内创建了一个字符串 但我想在循环外使用 var 这可能吗 List
  • .NET版本和C#版本之间的关系? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 如何确定可以针对特定 NET Framework 版本使用哪个版本的 C 我读过了 https sta
  • Git 精选语法和合并分支

    所以我之前已经做过无数次樱桃挑选 看来我现在必须在生活中失败 我正在尝试从一个分支挑选到另一个分支 这应该很容易 但是我收到了关于它是合并的错误 但是没有给出 m 吗 git cherry pick a8c5ad438f6173dc34f6
  • Mono无法打开sqlite数据库

    我正在尝试对 sqlite v3 数据库进行非常基本的连接 并且我正在使用 monodevelop 3 0 和 Mono 2 10 但无法连接到数据库 我可以让应用程序创建数据库 但随后它尝试连接到数据库时立即失败 有什么建议么 我从不同的
  • 查找可点击的元素

    有没有办法找到用 click 或 live click 指定的所有可点击元素 如果单击任何此类元素 我想执行一些操作 container bind click function event actions 这个捕获所有点击 Thanks 这
  • 如何使用时区偏移格式化 LocalDateTime

    我尝试这样做 ZoneOffset zoneOffset ZoneOffset ofHours 3 DateTimeFormatter fmt DateTimeFormatter ofPattern HH mm ss LocalDateTi
  • 如何确定我的 iOS 设备是否有手电筒?

    在我的应用程序中 我可以选择手电筒 然而 只有 iPhone 4 和 iPhone 4S 有手电筒灯 其他设备没有手电筒灯 如何找到当前设备型号 请帮我 提前致谢 您不应使用设备型号作为是否存在某项功能的指示符 相反 请使用 API 来准确
  • blur.js 尝试请求“none”并且 div 未扩展 100%

    我正在尝试使用http blurjs com http blurjs com 模糊标题栏的标题图像的背景 然而 它给了我一个有趣的错误 我似乎无法追踪 这可能与主要代码和兼容性有关 但我不确定 http jordan rave5 com t
  • 在 Numpy(或 Scipy)中计算斜率

    我正在尝试找到使用 Numpy 和 Scipy 计算斜率的最快 最有效的方法 我有一组由三个 Y 变量和一个 X 变量组成的数据集 我需要计算它们各自的斜率 例如 我可以轻松地一次一行执行此操作 如下所示 但我希望有一种更有效的方法来执行此
  • 按下 iOS swift 后更改 UIBarButtonItem 图标

    In the viewDidload方法 我声明了一个按钮并设置了 RightBarButton let btnFavourite UIButton frame CGRectMake 0 0 30 30 btnFavourite addTa
  • 找不到任何与 com.google.android.gms 匹配的版本:strict-version-matcher-plugin:[15.0.0, 16.0.0)

    项目一直运行良好 直到前两天突然出现错误 我不知道如何解决它 因为我已经做了我能做的一切 包括重新安装 android studio 和 gradle 无法解析配置 app debugCompileClasspath 的所有文件 找不到与
  • Array.push 返回推送值?

    是否有任何实质性原因需要修改Array push 返回推送的对象而不是新数组的长度可能是一个坏主意 我不知道这是否已经被提议或询问过 谷歌搜索只返回了大量与当前功能相关的问题Array push 这是此功能的示例实现 请随意更正它 func
  • ChildNode 类型上不存在属性“tagName”[Typescript]

    我正在从父节点循环子节点 我想访问子节点的 tagName 但错误是 tagName 在类型 ChildNode 上不存在 const contentParsed new DOMParser parseFromString content
  • 创建 LocalDB 以从 Visual Studio SQL 项目进行测试

    我正在尝试为我的项目创建集成测试 我需要测试一个通过存储库调用存储过程的控制器 应在每次运行某些范围的测试时创建一个空数据库 所以我将实施以下步骤 Create LocalDB 运行一些预脚本 以添加测试数据 Run test 运行一些后脚
  • GIMP的图层合成/混合方法

    在我寻求为 Matlab 中的图像混合工具添加 Alpha 功能时 我遇到了一些障碍 其中 我一直在使用these http ssp impulsetrain com porterduff html links http www adobe
  • 显示一个 div,单击时隐藏所有其他 div

    我有一个简单的图像 视频库 我想用 jQuery 制作动画 我想要做的就是 当有人点击链接时 big具有相同ID的div被设置为display block opacity 1所有其他 div 都设置为display none opacity
  • 将多通道 PyAudio 转换为 NumPy 数组

    我能找到的所有例子都是单声道的 CHANNELS 1 如何使用 PyAudio 中的回调方法读取立体声或多声道输入并将其转换为 2D NumPy 数组或多个 1D 数组 对于单声道输入 类似这样的工作 def callback in dat
  • NodeJS 中的 Rijndael 256 CBC PKCS7 加密/解密

    我正在为一项服务构建一个 NodeJS 客户端 该服务使用 256 位块 Rijndael CBC 和 PKCS7 填充来加密数据 我看过 NodeJS 中的几个 Rijndael 实现 但似乎没有一个提供我正在寻找的组合 如何使用Rijn
  • 从 python hook 调用 Mercurial 命令(“hg update”)

    我在 Windows 2008 64 位和 IIS 上设置了 Mercurial hgweb 存储库的位置是网络共享 我想在存储库上创建一个挂钩 以在更改组上发出 hg update 命令 我无法使用外部挂钩 因为这会以网络共享作为工作目录