Git部署带有子模块的钩子ec2
我在运行节点应用程序的aws上创建了一个实例。我安装了supervisord以保持节点应用程序正常运行。部署通过带有deploment钩子的git进行\ 结构如下:Git部署带有子模块的钩子ec2,git,node.js,amazon-ec2,git-submodules,supervisord,Git,Node.js,Amazon Ec2,Git Submodules,Supervisord,我在运行节点应用程序的aws上创建了一个实例。我安装了supervisord以保持节点应用程序正常运行。部署通过带有deploment钩子的git进行\ 结构如下: --- root | |--repo |-- hooks | |-- branches | |-- etc. | |--app post receive挂钩如下所示 #!/bin/sh GIT_WORK_TREE
--- root
|
|--repo |-- hooks
| |-- branches
| |-- etc.
|
|--app
post receive挂钩如下所示
#!/bin/sh
GIT_WORK_TREE=/home/ubuntu/app
GIT_DIR=/home/ubuntu/repo
export GIT_WORK_TREE
export GIT_DIR
git checkout -f
echo 'Update sub modules.'
git submodule init && git submodule sync && git submodule update
echo 'Install dependencies.'
cd $GIT_WORK_TREE && sudo rm -rf node_modules && sudo npm install
echo 'Restart app'
sudo supervisorctl restart node
每件事都很好,但当我开始在我的回购协议中使用子模块时,我无法提取该模块并得到此消息。我得到了这个信息:
您需要从工作树的顶层运行此命令
我的安装基于
我的配置设置
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.worktree=/home/ubuntu/app
receive.denycurrentbranch=ignore
如何解决此问题
提前谢谢