拾遗:Git 与 Svn hook 不执行问题

要点:

  • GIT 或 SVN 的 hook 执行之前,会将所有环境变量清空,因此在其中执行命令时,必须指定绝对路径或重新设置必要的环境变量,如:$HOME 等
  • 修改为正确的名称,如:post-commit、post-update 等
  • 添加执行权限
  • git hook 执行时需要通过 --git-dir 重新设定 $GIT_DIR,指向某个git仓库的 .git 目录,否则其默认路径为 '.' ,可通过如下方式解决:设定 alias git="git --git-dir=/PATH/TO/REPO/.git --work-tree=/PATH/TO/REPO"