2016-12-30 153 views
2

我有一個後收到鉤,當我推分支部署我的應用程序在webroot的。 這是我的腳本:Git的部署:在刪除文件時,按文件中刪除

#!/bin/bash 
while read oldrev newrev ref 
do 
    if [[ $ref =~ .*/master$ ]]; 
    then 
     echo "Master ref received. Deploying master branch..." 
     git --work-tree=/var/www/mywebroot --git-dir=/home/myuser/myrepo checkout -f master 
    else 
     echo "Ref $ref successfully received. Doing nothing." 
    fi 
done 

的問題是,當我把所有提交該刪除任何文件,這些文件被刪除了根目錄不會被刪除。

+0

如果我沒有弄錯,你想拉?結帳只能交換分支並更新HEAD。 Git pull會拉動更新。 –

回答

1

你可以只在git checkout行之後添加(使用git clean):

git -work-tree=/var/www/mywebroot --git-dir=/home/myuser/myrepo clean -fd 

,將刪除未跟蹤文件和文件夾。