我的项目中包含第三方库。重要的是"子项目"代码应该包含在主/父代码中,因为目标是当其他人进行git pull时,他们可以在没有额外努力(或最小化)的情况下下载代码。
但我希望有可能从库自己的仓库下载更新。
以前,该库已直接下载到他的目录中,并且更新是通过主项目中的提交来管理的。
现在我正在考虑使用git-subtree或git-submodule。 git子树是否适用于此目的。 git-submodule更好吗?
答案 0 :(得分:1)
Git子树。
答案 1 :(得分:0)
几乎总是,最好使用您正在使用的任何语言的包管理器来包含第三方代码,固定到特定版本。如果您没有包管理器,请将构建脚本中第三方存储库的特定提交/标记中的代码提取到git-ignored子文件夹中。
但是要具体回答你的问题,那里有很多资源来比较子树和子模块。每种方式都有利弊。我可以给你链接,但我只是从我的搜索中复制和粘贴。我建议,对于代码而言,您不是直接更改项目的一部分,子模块很好,因为您可能不希望项目中的库代码的历史记录。