问题标签 [githooks]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
40045 浏览

git - 提交后挂钩未运行

我的 post commit 钩子在 git 之后没有运行。如果我只是从终端运行它,我已经验证了该钩子确实有效。钩子里的代码是:

我确实在 ./.git/hooks/ 中将文件重命名为 post-commit,并且权限是-rwxr-x-r-x所以我不确定为什么它不起作用。

0 投票
2 回答
5422 浏览

git - 为什么无法 git add .git/hooks/my-hook

我希望在给定存储库的克隆中始终存在一些钩子。有没有办法在存储库的 .git/hooks 中添加文件?

谢谢

0 投票
1 回答
1303 浏览

git - Doxygen 如何在每次推送之前使用 git hooks 运行 doxygen?

我搜索如何使用 git hooks 从 doxygen 生成文档。
我已经阅读了 git hooks 示例,但我没有看到我想要的

根项目:
|- 文档/
|- src/
|- .git/

为了从根项目生成文档,我这样做:
$ doxygen documentation/doc.doxyfile

感谢您的帮助

0 投票
1 回答
4105 浏览

git - 跨平台 git 钩子

您如何跨各种平台(例如,*nix 和 windows)管理 git pre/post 提交钩子?

为这种情况推荐了任何最佳实践?

0 投票
2 回答
702 浏览

windows - git add hook / 让 git 忽略新文件的文件模式

我正在 Windows 和 linux/mac 上使用 git 存储库。当我在 Windows 上创建新文件或在某些文本编辑器中编辑它们时,文件模式更改为 775。我可以让 git 忽略文件模式更改

但我也希望大多数新文件具有模式 664(而不是 775)。到目前为止我想出的最好的是预提交钩子

但是如果我添加了一个新文件,然后在提交之前再次编辑它,然后在不添加它的情况下提交,那么这会做错事。有没有更好的方法来做到这一点,或者像 pre-add 或 post-add 钩子之类的东西?

编辑:git diff --cached --name-only还给了我已删除的文件,所以我真正想要的是git diff --cached --name-only --diff-filter=ACMRTUXB

0 投票
3 回答
3920 浏览

git - 通过 git hook 缩小 CSS 文件

我的理想情况是自动缩小 CSS 文件并将它们添加到 git 提交中。我不确定是否可以完成下面的#4,但我希望执行以下流程:

  1. 修改 CSS 文件
  2. 添加到暂存区
  3. 犯罪
  4. 运行更新缩小文件并将它们添加到提交的脚本
  5. 提交完成

如果还有其他方法,我也会对此感兴趣。

0 投票
1 回答
147 浏览

git - 在 git 上执行奇怪的钩子脚本

这有点奇怪,所以我在远程 git repo 钩子脚本 post-receive 中有这一行:

我从我的本地机器推送到我的 git 仓库——这就是奇怪的地方。在我的 post-receive 末尾的那些行是在我的本地机器上执行的,而不是在我的远程服务器上?

显然我最终得到了这个错误:

所以那里..很奇怪...

0 投票
1 回答
3557 浏览

git - 在挂钩中使用 git pull 时文件权限错误

当新的更改被推送到存储库时,我创建了以下 git 挂钩来更新我的 Web 应用程序

但是,如果我添加新文件,他们会获得错误的权限。它们只能由所有者读取,而不能由组或其他用户读取。但我需要每个人都可以阅读它们。在本地,他们拥有正确的权限位。即使我从 shell 手动运行钩子,它也能正常工作。只有当脚本作为钩子调用时它才不起作用。

任何想法如何解决这个问题?

PS:我使用的是 git 1.7

0 投票
1 回答
2568 浏览

git - Gitosis post-receive hook 部署存储库获取公钥错误

我在我的服务器上设置了 gitosis,我正在尝试创建一个接收后挂钩,它将检查对远程机器上工作目录的更改。

最初我收到一条错误消息,cannot open /home/user/source/testing-local/.git/FETCH_HEAD: Permission denied因此我将工作目录的 .git 文件夹的组所有权更改为 git 用户。

在此之后,我得到了一个错误Host key verification failed,导致我检查哪个用户正在运行钩子,当然是 git(我真傻!),所以我在 gitosis 中为运行 gitosis 的 git 用户设置了一个密钥,并在 gitosis.conf 中启用了它. 现在我变老了Permission denied (publickey).

我的接收后挂钩如下所示:

id调用只是为了检查我以哪个用户身份运行。

有没有更简单的方法来实现这一点?!我是否错过了设置中的某些关键内容?

0 投票
0 回答
942 浏览

php - mysqldump - git hook - 它允许什么?

在 mkb 用户的帮助下,我构建了这个预提交钩子:

据我了解:

将转到我的共享(或本地)主机,并在那里备份 atual 模式?

然而,很多时候,我们在本地更改架构,然后,我们需要在远程服务器上应用这些更改。

无论如何我可以按照这条路做这个吗?还是有更好的方法来实现预期?

提前致谢