2011-11-25 77 views
1

我经常使用这种模式,以方便部署网站:如何在远程启动/更新git子模块?

我有一个裸回购,我推/拉从我的电脑,这裸露的回购有一个后更新挂钩,自动拉另一个回购(现场版)。

但是,如果我在我的计算机上添加一个子模块,并将它推,我必须手动连接到远程,做初始化/更新。

有没有办法解决它?

回答

1

你必须做的比拉更多的现场服务器上的能力吗?你可以做到这一切在一个(好,技术上二)命令:

git pull && git submodule update --init --recursive 

这将递归初始化和拉的子模块,以及更新现有的子模块。

希望有所帮助。

+0

我会添加一些东西。 'cd $(git rev-parse --show-toplevel)&& git pull && git submodule update --init --recursive;'。第一个命令进入git文件夹树的顶层。 –