2011-05-04 72 views
7

阿羅哈!如何在Python應用程序中使用mercurial(Hg)?

Hg是一個很好的DVCS,它也是一個Python模塊。這使我們能夠「導入mercurial」並將hg加載到我們自己的應用程序中。我的想法是在Python應用程序中使用mercurial來爲我的應用程序創建一個修訂控制的存儲。

但我的谷歌搜索semms失敗我。我找不到任何文檔,教程或如何將hg用作Python中提供功能的模塊的示例。 help(mercurial)列出了正常的命令,dir()提供了一些方法提示。

但你是否爲例如創建支持存儲的文件,或者你有另一種類型的數據結構,作爲汞回購?

似乎有這個功能的整潔有很大的潛力。但是如何?

+0

這樣做並不是一個好主意,因爲mercurial項目不會嘗試在版本之間保持API的向後兼容性,而且他們在此前面提到。 – geoffspear 2011-05-04 19:12:29

+1

請注意,Mercurial是GPL(不是LGPL),因此如果您的應用程序以這種方式鏈接到Mercurial並且發佈了,則您必須將您的應用程序置於GPL之下。出於這個原因,並且因爲它是唯一保證穩定的API,所以大多數集成仍然是在命令行/進程級完成的,這非常穩定且有據可查。 – 2011-05-05 01:49:08

回答

6

API大多沒有文檔,使用它可能需要您將代碼作爲GPL發佈 - 請參閱https://www.mercurial-scm.org/wiki/MercurialApi。首選(並且更多向後兼容)的方式是調用hg CLI前端。

+0

感謝所有的答覆。基本上這個想法很糟糕,因爲Hg API不穩定和許可。嗯,好的。 通過CLI調用運行它是一種前進的方式,並且當您聲明整齊地解決這些問題時。雖然不能直接修改控制數據結構,但需要將它們傾倒(酸洗)到文件中進行存儲。無論如何你可能必須做。回到繪圖板我猜。 再次感謝! – JoachimS 2011-05-05 06:33:25

相關問題