git在一个项目下的多个项目策略

git在一个项目下的多个项目策略,git,version-control,Git,Version Control,此问题不会呈现代码。因为我想知道在一个git版本的项目中使用多个项目的正确方法 假设我有一个主项目。我在子目录下克隆了其他依赖项项目。标准的方法是什么 例如: 假设我克隆了Wordpress 然后我在themes文件夹下克隆了最新的开源模板。 我在plugins文件夹下克隆了最新的开源插件 每个子项目都将包含.git文件夹 我是否可以将它们(.git)添加到.gitignore?您可以用来管理子项目 在主项目下,执行以下命令以添加和克隆两个子项目: git submodule add https

此问题不会呈现代码。因为我想知道在一个git版本的项目中使用多个项目的正确方法

假设我有一个主项目。我在子目录下克隆了其他依赖项项目。标准的方法是什么

例如:

假设我克隆了Wordpress

然后我在themes文件夹下克隆了最新的开源模板。 我在plugins文件夹下克隆了最新的开源插件

每个子项目都将包含.git文件夹

我是否可以将它们(
.git
)添加到
.gitignore

您可以用来管理子项目

在主项目下,执行以下命令以添加和克隆两个子项目:

git submodule add https://example/project1.git themes/project1
git submodule add https://example/project2.git themes/project2
git submodule update --init
您可以使用来管理子项目

在主项目下,执行以下命令以添加和克隆两个子项目:

git submodule add https://example/project1.git themes/project1
git submodule add https://example/project2.git themes/project2
git submodule update --init
如果“子项目”是您通常不会在超级项目内部开发的依赖项,并且如果子项目是git回购,那么通常的做法是。初始化或克隆子模块时,将通知包含该子模块的git repo忽略该文件夹的内容,并且只记住您当前已签出的依赖关系repo的哪个版本。 如果依赖项不是git repos,从git的角度来看,您只需将它们添加到
.gitignore

如果“子项目”是您通常不会在超级项目内部开发的依赖项,并且如果子项目是git repos,则通常的做法是。初始化或克隆子模块时,将通知包含该子模块的git repo忽略该文件夹的内容,并且只记住您当前已签出的依赖关系repo的哪个版本。
如果依赖项不是git repos,从git的角度来看,您只需将它们添加到
。gitignore

如果我对主项目下的子项目做出贡献,这是一个好主意吗?@Lenin:这绝对可能;子模块本身就是普通的git回购协议(使它们成为子模块的原因是超级回购协议知道它们)。不过,有些人觉得这很不方便。你可以在Neevek的答案中的链接下阅读更多关于子模块的内容,在SO和Google上,你会发现更多关于子模块好坏的讨论。谢谢你的两个答案都是可以接受的,所以我选择了一个。如果我为我的主项目下的子项目做贡献,这是一个好主意吗?@列宁:这绝对是可能的;子模块本身就是普通的git回购协议(使它们成为子模块的原因是超级回购协议知道它们)。不过,有些人觉得这很不方便。你可以在Neevek的答案中的链接下阅读更多关于子模块的内容,在SO和Google上,你会发现更多关于子模块好坏的讨论。谢谢你的两个答案都是可以接受的,所以就选一个吧。