为什么我的post-receive hook不能运行virtualenv源命令?

问题描述:

我有一个以用户'git'运行的post-receive钩子。我有一个可由git读取的virtualenv/python/ve // bin/activate。正在运行:为什么我的post-receive hook不能运行virtualenv源命令?

source /python/ve/<name>/bin/activate 

适合git群组中的用户使用。

当它在推送后作为post-receive钩子运行时,出现错误“source:not found”。

我不知道在哪里可以看 - 任何提示非常赞赏。

这是一个猜测,因为您没有引用完整post-receive挂钩,但我怀疑您没有shebang line指向顶部的/bin/bash。你post-receive钩子应该开始:

#!/bin/bash 

我怀疑这是因为,如果我跑了严格的Bourne shell,如dash,我得到了同样的错误尝试与来源任何source时。

+0

辉煌。谢谢。我不小心有/ bin/sh,因为我从别人的手中复制了它。我刚刚为git用户更换了shell,但忘记了shebang行。感谢您提供这样一个快速准确的答案。 – willcritchlow 2011-04-29 08:48:04

+0

没问题 - 这很容易:) – 2011-04-29 08:54:45

+0

+1为不完整的数据的答案。 :) – 2011-04-29 09:19:47