python - 为什么我的 post-receive Hook 不能运行 virtualenv source 命令?

标签 python linux git virtualenv git-post-receive

我有一个以用户“git”身份运行的接收后 Hook 。我有一个 git 可读的 virtualenv/python/ve//bin/activate 。运行:

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

适用于 git 组中的用户。

当它在推送后作为接收后 Hook 运行时,我收到错误“source: not found”。

我不确定还有什么地方可以看 - 非常感谢任何提示。

最佳答案

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

#!/bin/bash

我怀疑这是因为如果我运行一个严格的 Bourne shell,比如 dash,我在尝试使用 source 获取任何东西时会遇到同样的错误。

关于python - 为什么我的 post-receive Hook 不能运行 virtualenv source 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5829784/

相关文章:

linux - 关于软件桥连接问题的债券

linux - 混帐 : reverts changes other than one specific files

git - 为什么 GitHub 和 git 命令行对于 merge 状态和提前/落后提交给出不同的结果?

python - 从 tricontourf 去除轮廓周围的白色痕迹

python - 计算 csv 文件中特定字符串的出现次数

python - 聚合和填充缺失日期(天和小时)的数据

python - 如何将 Keras 模型摘要写入数据框?

linux - eval `ssh-agent` 和 exec ssh-agent bash 的替代品

c++ - strtok 读取文件时出现段错误

git - 自动 merge package-lock.json