公司的開發項目部署以下:git
開發人員本地一份版本庫(CLONE);github
測試服一份版本庫(CLONE);post
ORIGIN一份版本庫。測試
當開發人員本地開發測試好以後須要先PUSH到測試服測試,沒問題後再PUSH到ORIGIN。開發
GIT的PUSH若是是PUSH到分支上,好比測試服的CLONE,首先遇到的問題是,GIT會默認阻止你這麼幹,須要修改GIT CONFIG進行以下設置:部署
[receive]
denyCurrentBranch = ignore
it
設置好了尚未完,PUSH上去你要是去測試服上查看,文件並無更新。這時候須要用到GIT的HOOK:date
感謝某某網友的無私奉獻,咱們不用再去手寫SHELL腳本了,腳本下載地址:https://gist.githubusercontent.com/volca/9482044/raw/344a590af350b997db3819fa21426dfe8bc140f4/post-update;權限
下載到 你的項目目錄/.git/hook/,最後添加可執行權限及修改用戶組:下載
chmod g+x 你的項目目錄/.git/hook/post-update
chown www:git 你的項目目錄/.git/hook/post-update
OK,慢慢享受吧。