【发布时间】:2010-11-20 05:08:14
【问题描述】:
我正在使用 github 作为一个小项目的 repo,但我也想使用其他 github 用户编写的一些代码。
是否可以在我的项目中设置一个 /library/libraryname 文件夹,以维护它与其他用户 repo 的链接以及作为我的项目提交的一部分?
例如:如果其他用户稍后更新他们的代码,我希望能够轻松获取他们的更改,同时仍将其保存在与我的主项目相同的存储库中。
【问题讨论】:
我正在使用 github 作为一个小项目的 repo,但我也想使用其他 github 用户编写的一些代码。
是否可以在我的项目中设置一个 /library/libraryname 文件夹,以维护它与其他用户 repo 的链接以及作为我的项目提交的一部分?
例如:如果其他用户稍后更新他们的代码,我希望能够轻松获取他们的更改,同时仍将其保存在与我的主项目相同的存储库中。
【问题讨论】:
我认为您可能正在寻找git submodule 命令。也可以看看Git Submodule Tutorial。
【讨论】:
如果需要,可以使用git subtree 代替 git 子模块。这使用起来更方便一些,并且不需要从您的存储库中签出的人了解有关子模块或子树的任何信息。它还可以让您更轻松地维护自己的子项目补丁,直到您准备好将它们提交到上游。
【讨论】:
--编辑
删除了我“可能不可能”的说法。我的其余论点仍然有效。
但无论如何,一般来说,您不希望如此快地获得更新。您希望拥有他的库的“稳定”版本,并且仅在发布另一个“稳定”版本时更新它(经您测试;不一定是他认为“稳定”的版本)。
因此,即使您可以(但在我使用的 SVN 中,您不能,但我不具体了解 git)您也不想这样做。
【讨论】: