日常开发流程为:开发机->公共仓库->测试,从公共仓库到测试由git钩子来完成,建立过程为:
- 建立远程remotehost公共仓库pubrepos:
- mkdir pubrepos&& cd pubrepos && git –bare init
- 将本地开发机仓库push到远程remotehost公共仓库pubrepos:
- git remote add remotehost user@remotehost:pubrepos
- git push remotehost master
- 建立远程remotehost测试目录testdir,通过sparse checkout只同步需要的目录:
- mkdir testdir && cd testdir && git init
- git remote add -f origin pubrepos
- git config core.sparsecheckout true
- echo testproject/ >> .git/info/sparse-checkout
- git pull origin master
- 在远程公开仓库pubrepos中添加钩子:
- cd pubrepos
- echo -e “pushd testdir \n unset GIT_DIR \n git pull origin master \n popd \n exec git update-server-info” > hooks/post-update
- chmod u+x hooks/post-update
Advertisements