标签:git
今天在配置git自动在提交时从bare库中检出到应用目录时,竟然出现这个错误,折腾了好久,搞不明白怎么回事,经过测试,发现是git本身的问题,
就是没摸着是什么引起的;
通过google.终于发现说是git版本目录与work目录不允许相同的前缀,也就是work-tree目录=qidizi 而git-dir=qidizi.git
就是work-tree目录完全就是git-dir目录前缀时,就会引起这个bug.
解决方法是让work-tree目录不同,如qidizi.a
以上问题,好像直接使用shell输入运行时,没有问题.但是配合ssh 登录使用时,就会出现问题
如hooks/post-receive代码如下
/usr/bin/git --git-dir=/var/www/cms.qidizi.cn.git --work-tree=/var/www/cms.qidizi.cn --bare log ./
[root@localhost www]# su -l nginx -s /bin/sh -c "cd /var/www/cms.qidizi.cn.git && hooks/post-receive" 这样运行时,就会出现问题,如下面的错误提示
/var/www/cms.qidizi.cn.git
fatal: Could not jump back into original cwd: No such file or directory
/var/www/cms.qidizi.cn.git
解决方案是把 cms.qidizi.cn 改名成 cms.qidizi.cn.aaaaabbbbcc.....这样
见其它人的说明
http://stackoverflow.com/questions/6657978/git-post-receive-hook-can-not-jump-back-into-original-cwd
fatal: Could not jump back into original cwd: No such file or directory
标签:git
原文地址:http://blog.csdn.net/qidizi/article/details/39442511