我可以将GIT子模块添加到现有项目的根目录,其中文件不是联合的吗?

时间:2012-11-13 16:22:40

标签: git magento themes git-submodules

例如,我有Magento项目:

app/design/frontend/base/
app/design/frontend/default/
errors/default/
errors/local.xml.sample
...
skin/frontend/base/
skin/frontend/default/
...

...和外部主题:

app/design/frontend/[theme name]/default/
errors/[theme name]/
errors/local.xml.[theme name]
skin/frontend/[theme name]/default/
README.[theme name]

但是当我尝试将主题库作为子模块添加到项目的根目录时......

$ git submodule add -b theme_name git://theme_repository.git .
'' already exists in the index

有没有解决方案?

1 个答案:

答案 0 :(得分:2)

您无法在当前目录中添加子模块的内容(已经版本化,因此“已存在于索引中”)。
你需要使用:

git submodule add -b theme_name git://theme_repository.git aDirectory

aDirectory将是 new 目录尚未存在,并创建为子模块的根文件夹。

然后,您可以将符号链接添加到该新文件夹,以便app/design/frontend/[theme name]skin/frontend/[theme name]重新引用正确的文件夹。