更改目录,运行某些命令,然后从git运行checkout的正确方法是什么。
基本上,我的流程是这样的:
我陷入困境3.基本上,如果我尝试结帐,我会得到"而不是git存储库"错误。我理解为什么。我很好奇是否有更好的方法从正确的位置运行checkout命令而不进行其他目录更改。
这是我现在所拥有的
#!/bin/bash
while read oldrev newrev refname
do
branch=$(git rev-parse --symbolic --abbrev-ref $refname)
case $branch in
"testing")
echo "testing branch"
DEPLOYDIR=../testing_html
cd $DEPLOYDIR
php artisan down
#php artisan migrate:rollback --env=srv-testing
GIT_WORK_TREE="$DEPLOYDIR" git checkout -f
#php artisan migrate --seed --env=srv-testing
#php artisan up
#echo "Deployment to testing environment complete"
;;
*)echo "doing nothing";;
esac
done
答案 0 :(得分:0)
你应该插入:
export GIT_DIR=$PWD
在第一个cd
之前,DEPLOYDIR
不应该是相对路径。使用:
DEPLOYDIR=$PWD/../testing_html