如何在Windows上运行git hook脚本,通过文件系统使用存储库?

时间:2014-04-30 09:17:46

标签: windows git githooks

由于其简单性,我们使用放置在共享磁盘上的远程存储库,使用文件系统路径(\ server \ share)访问它。在这种情况下,是否可以运行在远程存储库中定义的钩子脚本?我已经定义了一个,但似乎它没有启动(在钩子脚本中使用无效编辑进行测试,这应该会导致错误)。

3 个答案:

答案 0 :(得分:26)

Git hook是一个脚本,你可以在提交之前(pre-commit)或之后(post-commit)运行。这样的剧本可以有多个。

将它们放在指定的文件夹中。任何git存储库都有一个.git/hooks文件夹,其中包含挂钩脚本的文件。

你需要回答 您是否正在测试绑定到您的git存储库中存在的钩子的事件?

还要检查git如何在Windows中执行挂钩:

使用钩子的提示:

更多git hooks阅读:

答案 1 :(得分:2)

经过数小时的战斗后,我的建议再次确认:

git config core.hookspath

它应该为空或指向您的hooks文件夹(.git\hooks

答案 2 :(得分:0)

如果运行命令:

git config core.hooksPath .git-hooks

这将从项目根目录中查找.git-hooks文件夹中的钩子,与找到.git文件夹的位置相同。在此文件夹中运行命令时,请注意,从此开始执行的目录是项目根目录-而不是具有实际钩子的.git-hooks文件夹。这就是为什么您会收到“找不到命令”的原因。

.git-hooks / post-merge文件的示例内容

!#!/bin/bash
bower install

“ bower install”命令从父目录运行。