好的,這是真的很奇怪。我有一箇舊的Mercurial 2.02。在舊的Ubuntu上使用Python 2.6(我認爲是10.4)。 我們是一家窗口店,不定期推送,所以我想要一種評論服務。它絕對工作在Windows .. pretxnchangegroup引用驅動器上的python文件,工作..Mercurial hook:更改後不重新編譯?
但我犯了一個新的Mercurial 2.7上創建Mercurial掛鉤的錯誤,但後來認識到內部API更改,所以我得到回來並修復它,或試圖。我使用Windows,但需要將鉤子部署到Linux,所以我使用WinSCP將py文件複製到我的主目錄。然後sudo cp它到另一個hook文件所在的python 2.6 distro文件夾。
我通過在Linux中的模塊模式調用掛鉤:
pretxnchangegroup.pushtest = python:mycompanyname.testcommit.exportpatches
在文件夾「mycompanyname」是文件testcommit.py和功能被命名爲exportpatches。它在本地工作沒有問題。
奇怪的是:它曾經工作過一次,有點不穩定:有時它只是說「mycompanyname.testcommit.exportpatches」這個函數沒有定義。有時它只是使用舊版本的鉤子(我認爲這是因爲它提供了一箇舊的異常消息而不是新的消息)。我不知道如何獲得python的異常消息,所以我迷失在那裏..
第二個奇怪的事情:這些鉤子文件也有一個.pyc版本,可能編譯,但我的鉤子沒有得到這種治療。那是自動合併?
如果我嘗試使用目錄方法指向該文件,那麼在推送時會出現500內部錯誤。
我真的失去了和絕望現在,因爲該材料具有相當工作不久,和我撞我的頭靠在牆上現在..
只是一個評論。在本地工作,但在服務器上奇怪?也許需要服務器重啓? – santiagopim
本地=不同的python,不同的Mercurial,不同的操作系統;不同的一切。即使重新啓動很容易,但我很難相信這是操作系統中任何暫時搞砸的問題,尤其是,在Linux上(在Windows上,這將是一個不同的故事..)。 – hko