2010-07-21 157 views
1

我正在嘗試在服務器中使用post-update掛鉤創建一組git存儲庫和web文件夾。這將是這樣的:用於Web開發的Git

//服務器的/ dev(用於開發文件)和//服務器/網絡(Apache的主路徑)

爲//服務器的/ dev Git倉庫的post-update掛鉤:

#!/bin/sh 

unset GIT_DIR 
PROJECT=`basename $(pwd)` 
cd ../../web/${PROJECT} 

echo "Updating `pwd`..." 
git reset --hard 

我在推送內容時看到更新消息,但是//服務器/ web文件夾不會更新。它不斷顯示第一個提交HEAD。

「HEAD現在是XXXXXXX第一次提交」

還有周圍的一些解決方案,但我似乎無法得到它的正常工作。

+0

有你看了在這個網站上處理這個問題的時間很少? – ndim 2010-07-21 14:29:29

+0

您正在使用git reset而不是git pull來獲取內容並將其合併到當前分支中。 – Scharron 2010-07-21 14:34:21

+0

ndim,如果你能指出其中一個能夠幫助我解決這個問題的人,那將會很棒。 – user377706 2010-07-21 17:51:36

回答

1

如果存儲庫位於最後一次提交的某個時間點,那麼會進行更新,並且您拉取時,拉應該總是快進,根據定義,這不會導致合併衝突。唯一不是當你將非快進更新推送到中央存儲庫時,通常不應該這樣做。

當然,你不如最壞的打算,並絕對保證,這將工作,即使非快進的更新,那麼你可以這樣做:

git fetch 
git reset --hard origin/master