2017-08-30 24 views
0

我将文件夹添加到项目中...其中一些文件夹是git项目。将“子模块”目录中的文件添加到主项目中

一般来说,我应该添加“子模块”...但是,对于这个项目,我想忽略这些文件夹是子模块的事实。

即使它们是“子模块”,您如何添加文件?

我只想'git add -A',提交“消息”并推送。我想保留.git文件夹 - 而不是添加/提交.git文件夹 - 并有效地忽略“子模块”部分。

文件夹:

YYY 
|- .git <-- Project .git 
|- ZZZ <-- Project ZZZ 
     |- .git <-- Don't add this 
     |- (project files) <-- do add these 
|- QQQ <-- just another folder with.. 
     |- MMM <-- Project MMM inside 
      |- .git <-- Don't add this 
      |- (project files) <-- do add these 
|- (project files) 
+0

[如何将现有的Git存储库导入到另一个?](https://stackoverflow.com/questions/1683531/how-to-import-existing-git-repository-into-another) – marcusshep

+0

@marcusshep a简短的看看表明,问题没有git子文件夹,并且该问题想要合并历史记录......这绝对不是重复的。我只想添加具有.git文件夹的文件夹。没有子树/子模块的魔力。没有历史合并。 – WernerCD

+0

是的......这个问题决不会形成或重复这个问题。我不在乎子模块的历史,我不想删除子文件夹git目录。我只是想将文件(不是.git目录)添加到主项目中,而不会与子模块混淆。 – WernerCD

回答

0

列出所有的git子模块(很多答案的一个here

git ls-files --stage | grep 160000 

结果

160000 fdd0df41eb6271f06711c791af587c614097eedb 0  web/libraries/randomLibrary 
.... 

删除缓存项

git rm --cached web/libraries/randomLibrary 

然后添加的所有文件文件夹

git add web/libraries/randomLibrary/* 

中再加入所有

git add --all && git commit -m "Message" 

这裹起来一个班轮所有“子模块”。

黑客,但适用于此项目。

相关问题