首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编写一个post commit钩子来推送到我的临时站点,但不要认为它由于某种原因正在运行

编写一个post commit钩子来推送到我的临时站点,但不要认为它由于某种原因正在运行
EN

Stack Overflow用户
提问于 2013-06-28 03:29:58
回答 1查看 70关注 0票数 2

我的post提交钩子有以下设置:

在.git/hooks/一键登台中

代码语言:javascript
复制
#!/bin/sh

while read oldrev newrev refname
do
  branch=$(git rev-parse --symbolic --abbrev-ref $refname)
  git push -f myapp $branch:master && heroku run rake db:migrate -a my-app && heroku restart -a my-app
done

我确保使用chmod +x push- to -staging。

然而,当我推送到我的任何分支时,推送显然是正常的……但仅此而已。我没有看到推送到我的临时服务器。

其次,我想知道是否有一种方法可以使这个post commit钩子成为我的repo的一部分(或者这不是钩子应该如何工作的吗?)我只是希望我的团队中的每个人基本上都有这个设置。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-28 03:53:37

在Git中没有这样的钩子:push-to-staging。您可以在存储库的hooks目录中看到可用的挂钩,例如,在我的系统中,我有:

代码语言:javascript
复制
applypatch-msg
commit-msg
post-commit
post-receive
post-update
pre-applypatch
pre-commit
prepare-commit-msg
pre-rebase
update

在您的例子中,您正在寻找post-commit钩子。将脚本重命名为post-commit,或者从post-commit创建指向您的脚本的符号链接。

您不能使钩子成为存储库的一部分,也就是说,您不能自动启用钩子并通过分支操作进行传播。如果这是可能的,那么在克隆存储库时,这将是一个巨大的安全风险。你可以做的是简化钩子脚本的启用,你可以在其他答案中看到这样的例子:

Putting git hooks into repository

Tracking changes to hooks in .git/hooks

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17351659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档