2017-02-22 140 views
3

我正试图在Git和Rational Team Concert之间使用服务器端钩子实施一些策略。即预先接收一个,但该钩似乎不被解雇。 即使使用一个简单的bash shell来重新定义理性的钩子,这个shell会重命名一个文件,但看起来并没有被执行。 我把脚本放在/ hooks目录下有755权限,如果从shell执行它可以正常工作。 如何检查问题在哪里? 我可以查看哪些日志?Git服务器端钩子没有触发 - 如何检查

这是简单的shell我想执行的预收到钩

#!/bin/bash 
# 
# Licensed Materials - Property of IBM 
# (c) Copyright IBM Corporation 2014. All Rights Reserved. 
# 
# Note to U.S. Government Users Restricted Rights: 
# Use, duplication or disclosure restricted by GSA ADP Schedule 
# Contract with IBM Corp. 
# 
# 

z40=0000000000000000000000000000000000000000 
IFS=' ' 

date >> /tmp/test.txt 
#mv /tmp/ss/daeseguire.txt /tmp/ss/eseguito.txt 
exit 1 

在此先感谢

+0

嗨,欢迎所以!请提供[mcve],以便我们能够帮助您更好! – Hatef

+0

谢谢你的建议,我在这里是新手。 我修改了原来的问题: – simsabat

+0

simsabat:你解决了这个问题吗?我有或多或少相似的问题。我无法检查钩子是否运行 – GergA

回答

0

不要忘记,pre-receive钩是server-side hook

这意味着,如果你有嵌套的RTC沙箱(这是一个RTC回购工作区的当地结帐)内的本地git仓库,本地的Git回购将执行.git/hooks/pre-receive脚本。

如果您已设置RTC-Git integration,则官方文档为“Configuring Git and Gerrit server-side hooks”。
但它假设configuration step已完成并正在工作,这意味着您可以查看Apache日志以查看是否有任何线索。

+0

谢谢您的回答。 首先,我使用git与远程存储库,在一个Linux RHEL与Apache,存储库是 /var/www/html – simsabat

+0

然后,我还没有发射RTC给予挂钩,因为我甚至不能发射一个简单的shell钩子。 – simsabat

+0

@simsabat是否使用官方RTC-Git集成? – VonC

0

这是我推操作的输出:

$混帐推--verbose获取包列表抓取远程头...
裁判/裁判/标签/裁判/头/更新“裁判/从 decabae30c2b8cfac8e2795a1da342ce9e22ec12到
6e583f66c4410fd0e2ee18ee491236f16d05f64b 发送5个对象 发送头/主” 707de30e348030620f1e49d14f4e7cf108e305c9 发送4d9de1b3a723b21d6855354dd6867c72e4853b43 发送6e583f66c4410fd0e2ee18ee491236f16d05f64b 发送a9e64e39116bc7abd9af2c5eeaa071e4a4243294 发送845de842759b28a53651c86073afa9ce6e30577e 完成更新远程服务器信息推到http://172.24.113.41/pico2.git/http://172.24.113.41/pico2.git/
decabae..6e583f6主 - >主更新本地追踪裁判 '参/遥控器/产地/硕士

+0

没有错误出现在apache access_log和error_log – simsabat