2010-03-20 100 views
6

我正在使用TortoiseHg并希望将挂钩应用于我的回购。我回购的.hg/hgrc文件如下:将挂钩添加到TortoiseHg

[hooks] 
pretxncommit = python:hg_checksize.newbinsize 

的事情是,我不知道在哪里TortoiseHg的PYTHONPATH变量。我该如何改变它?或者我在哪里放置我的Python文件,以便TortoiseHg的Python解释器可以看到它?

我无法在TortoiseHg的文档或通过Google找到钩子的提及吗?

回答

4

要启用TortoiseHg进程挂钩你必须把你的* .py文件到C:\ Program Files文件\ TortoiseHg \ library.zip。 TortoiseHg从library.zip加载Python文件。

重新安装TortoiseHg可能意味着必须重复此步骤。

4

你可以把你的.py放在任何你喜欢的地方,并使用它的完整路径。该syntax然后

[hooks] 
pretxncommit.myhook = python:/path/to/my.py:newbinsize 
+0

我用以下为我的价值。 python:C:\ src \ hooks \ hg_checksize.newbinsize 这不起作用。是否因为Windows路径必须以不同的方式写入? – hekevintran 2010-03-20 18:44:37

+3

也可以在工作副本中引用一个文件,以便在开发人员之间轻松共享钩子:pretxncommit.syntax_check = python:bin \ php_syntax_check.py:check 如果我的工作副本位于C:\ project \中,TortoiseHg将会寻找C:\ project \ bin \ php_syntax_check.py并执行指定的检查函数。 – JSmitty 2013-03-21 18:51:09

+1

这可能是一个更好的答案,因为编辑' \ lib \ library.zip'不是一个很好的做法,更不用说所有用户都可以使用。 – bambams 2015-09-01 19:00:28

1

jk的回答是正确的,根据hekevintran的评论他有一个错字。它应该是

pretxncommit.myhook = python:C:\src\hooks\hg_checksize:newbinsize 

应该是蟒蛇文件和方法之间的冒号,不是句号 (Win7上证实符合HG 1.5.1)