Git跟踪文件夹中的Git跟踪文件夹

时间:2016-06-17 06:33:37

标签: git

我开发了一个Web项目并使用git跟踪它。后来我不得不在另一个大项目中使用该项目,该项目再次被git跟踪。早些时候我还没有关于git sub模块的知识。所以我立即将小项目文件夹复制到大项目文件夹中。

然后,当我将大项目推送到远程存储库时,我注意到远程仓库将小项目链接到其各自的远程仓库。如果我在大项目中的小项目中更改任何内容,则无法跟踪。我认为问题是小项目中的.git文件夹,所以我删除了该文件夹。现在我甚至无法推进小型项目的远程回购。这有什么解决方案吗?我可以撤消我所做的一切,以便让小项目成为大项目的git子模块吗?

1 个答案:

答案 0 :(得分:3)

  

如果我在大项目中的小项目中更改任何内容,则无法跟踪。

它没有被跟踪,因为它被父项目视为 gitlink for nested repo 。也就是说,只是一个SHA1,而不是它的实际内容。

如果您的第一个仓库被推到了远程,然后,您可以将其添加为主仓库的子模块git submodule add

cd second/big/repo
git submodule add -- /url/first/repo

如果没有,你需要重新创建你的第一个仓库(之外的大仓库),将它推到远处(GitHub,GitLab,Bitbucket,......)并将其作为你的子模块添加大回购。