如何在python应用程序中集成DVCS

2024-06-02 04:30:13 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,我有一个简单的pyQt文本编辑器

本质上,我想添加mercurial支持

我在其他各种编辑器中看到了支持许多dvc(Mercurial、GIT、Bazaar等)的能力,它们让用户能够执行提交、更新等功能

我真的很想知道我可以在pyQt文本编辑器中集成什么/如何集成mercurial,以便它的行为或多或少类似于其他高级编辑器。你知道吗

关于如何完成这项工作有什么好的教程/指南吗


Tags: 用户git功能指南教程能力编辑器mercurial
1条回答
网友
1楼 · 发布于 2024-06-02 04:30:13

这方面没有教程,但通常有三种方法:

命令行界面

Mercurials命令行界面被认为是稳定的。这意味着您可以期望没有扩展的Mercurial不会更改命令的输出。对大多数命令使用“-T json”也会产生易于解析的json输出。这种方法是健壮的,而且相当容易实现,因为您只需调用Mercurial并解析json即可。大多数标准命令,如commitlog等,都应该可以使用此命令实现

hglib公司

Mercurial提供hglib。在CPython中可用的库,允许您通过本地协议与Mercurial进行接口。Mercurial将在服务器模式下启动,您可以使用库进行交互。这种方法也非常稳定,提供了更好的抽象,但依赖于命令服务器的可用性,并意味着库中可能发生的API更改。请注意,在针对库进行链接时,还必须考虑库的许可证。你知道吗

埋入水银

Python进程可以通过正确的模块直接嵌入Mercurial。然而,Mercurial API在内部并不稳定,而且会不断变化。此选项为您提供了最大的灵活性,因为您可以访问所有内容,包括数据结构的低级解析、隐藏功能(如过时标记)的公开。缺点是:1。您必须知道该怎么做,否则可能会损坏存储库2。api一直在变化3。您必须遵守GPL许可证。你知道吗

相关问题 更多 >