gitlab webhook php exec 调用 shell 脚本。shell 脚本中调用 git pull 命令无法执行。
情况如下:
我在ubuntu server 14.04 上面安装了gitlab,来托管项目代码。然后想通过gitlab的web hook 功能来做测试服务器代码自动化更新代码功能。现在遇到一个问题:就是我客户端在master分支上面push代码的时候,我测试服务器的代码目录并没有自动更新。我的shell脚本如下:
!/bin/bash
echo 'haha:::==' >> /tmp/wtz.log
cd /srv/www/bfar-ng
echo 'my name is gitlab'>> /tmp/wtz.log
git checkout master
git pull origin master >> /srv/www/deploy/info.log
git pull origin master
echo 'you are so cute!!!::'>> /tmp/wtz.log
查看wtz.log 后发现echo 'my name is gitlab'>> /tmp/wtz.log 和echo 'you are so cute!!!::'>> /tmp/wtz.log 都成功写入到日志文件中。但测试服务器项目原代码就是没有自动更新。除非手动git pull origin master 或者 在终端里面直接执行 上面的shll。它才会更新。
ps:项目目录我都设置777权限了。
求教为啥无法执行git命令。
相关阅读:
a标签 火狐下的bug
这段angularjs最佳实践的代码看不太懂
域名设置问题
关于 Gson 解析JSON数据。。。
sqlalchemy 如何执行mysql的存储过程并获取返回结果?
关于轮播图设置辅助图left值的问题?
segmentfault中站内提醒是如何合并的?
如何提高网站百度索引量,网站都提交一周了,可是还只是收录了一个页面
transform-rotate旋转后,用js获取元素所占的宽度
iOS 系统tabbar自带返回功能
MailSender群发邮件助手无法往图片上面添加文字。
对Thinkphp select的数据集的键改成表里的ID
angularJS怎么设置cookies保存的时间
Xcode7 断点调试不停在代码区(已解决)
appstore审核邮件通知
已经开启了ARC dealloc 还可以用?
Coffeescript this point not found
如何防止css布局颠簸
smarty遍历 多出一个元素,key值为count
请教如何在本地实现两个不同的域用于验证ajax跨域