我已经看到了很多关于我的问题的帖子和博客,但都没有解决我的问题,所以我会在这里询问是否有人遇到过同样的问题。
我正在尝试通过github部署我的网站。我已经在服务器上创建了一个空的hub.git存储库,我将我的本地git存储库推送到它,检查它是否与git日志一起工作,一切正常。
然后,我将此存储库克隆到服务器上的一个名为dev的存储库中,并为其创建了一个虚拟主机,一切正常。
我过去常常从本地推送到集线器,然后从开发中拉出集线器,它工作得很好。我想要自动化这一点,我想能够从本地推送到集线器,并自动从开发中拉出集线器。因此,我在hub.git/hooks中创建了一个更新后文件,并将以下内容放入其中:
#!/bin/bash
echo
echo "***** updating on dev *****"
echo
cd /../dev || exit
unset GIT_DIR
git pull origin master然后,我确保我的更新后是可执行的
chmod +x hooks/post-update回到我的本地存储库,更改了一个文件
git add .
git commit -m "testing"
git push origin弹出此消息
remote :
remote : ***** updating on dev *****
remote :
remote : fatal: Not a git repository (or any parent up to mount point /dev)
remote : Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).我检查了一下,发现在我的dev目录中有一个.git,而且它的头没有被重命名或者其他什么。然而,我确实有一个HEAD,一个FETCH_HEAD和一个ORIGIN_HEAD (不知道这是否会改变什么)。
我不确定这里有什么问题。服务器是一个gentoo x86 (如果这可能有帮助的话)。抱歉,如果我只是遗漏了一些明显的东西,或者如果这里不是发布这篇文章的地方。
发布于 2013-06-03 15:41:41
用cd ../dev替换cd /../dev应该会有所帮助。
如果不是,请尝试使用echo $(pwd)查看您在输出中的位置
https://stackoverflow.com/questions/15875825
复制相似问题