2013-04-08 42 views
2

我見過很多關於我的問題的主題和博客文章,但他們都沒有解決我的問題,所以我會問在這裏是否有人遇到同樣的問題。使用github進行部署,git_discovery_across_filesystem未設置

我試圖通過github部署我的網站。我在服務器上創建了一個bare hub.git回購,我將我的本地git回購推送到它,檢查它是否與git日誌一起工作,並且一切正常。

然後,我在服務器上將這個repo克隆到名爲dev的repo中,併爲它創建了一個虛擬主機,並且一切都顯示正常。

我曾經從本地推到集線器,然後從開發拉集線器,它工作正常。我想自動化,我希望能夠從本地推送到集線器,並自動從開發中拉出集線器。所以,我創建了hub.git /鉤出更新後的文件,並把這個在它:

#!/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). 

我檢查了一下,在我的開發目錄中有一個.git文件,HEAD沒有被重命名或任何東西。不過,我確實有一個HEAD,一個FETCH_HEAD和一個ORIGIN_HEAD(不知道這是否會改變任何東西)。

我不確定這裏有什麼問題。該服務器是一個Gentoo x86(如果這可能有所幫助)。 對不起,如果我只是錯過了一些明顯的東西,或者如果這不是發佈這個地方。

回答

0

替換cd /../dev通過cd ../dev應該有所幫助。

如果不是,請嘗試echo $(pwd)以查看您在輸出中的位置

相關問題