2012-04-18 130 views
0

使用子模块有没有人对我有任何提示有关的以下问题:与本地存储库

  • 我有些本地资源库ABC,我在一个项目中使用X.
  • 我添加了这些库作为ABC子模块到项目X.

但是,当我推我的项目X,子模块内的文件不推送到我的SSH服务器上的远程裸仓库(我只看到空目录)。我怎样才能实现这一点,同时保持本地仓库ABC。

回答

0

我不确定这是否真的有可能。当你推到你的远程repo时,git会推送关于你的子模块的信息(即在.gitmodules文件中的信息),但它不会自动推送子模块的文件。无论是否是裸回购,这都是事实,并且是子模块的一种。一个子模块是在一个单独的回购中,你保留在你的超级项目中的东西就是对它的引用。

我敢肯定,如果文件被分离到子模块中,并且希望它们在服务器上可用,则需要在服务器上为这些子模块进行远程回购。如果您开始跟踪超级项目中的ABC文件,那么它们不再是真正的子模块。

你可能会建立一个钩子,只需拷贝你的ABC文件在推送后到你的服务器,但它们当然不会成为你的远程存储库的一部分,只能在远程服务器上使用。

总之,如果你必须在那里建立一个远程回购。