【问题标题】:Multiple git repo in one project一个项目中有多个 git repo
【发布时间】:2010-11-20 05:08:14
【问题描述】:

我正在使用 github 作为一个小项目的 repo,但我也想使用其他 github 用户编写的一些代码。

是否可以在我的项目中设置一个 /library/libraryname 文件夹,以维护它与其他用户 repo 的链接以及作为我的项目提交的一部分?

例如:如果其他用户稍后更新他们的代码,我希望能够轻松获取他们的更改,同时仍将其保存在与我的主项目相同的存储库中。

【问题讨论】:

    标签: git github


    【解决方案1】:

    我认为您可能正在寻找git submodule 命令。也可以看看Git Submodule Tutorial

    【讨论】:

    • 是的,我想我确实想要子模块,感谢您提供指向教程的链接。
    • 看起来子模块只代表另一个 repo 的特定提交号,并且它们需要在推送超级项目之前进行子模块推送以显示所有更改。谁能确认这些限制?
    【解决方案2】:

    如果需要,可以使用git subtree 代替 git 子模块。这使用起来更方便一些,并且不需要从您的存储库中签出的人了解有关子模块或子树的任何信息。它还可以让您更轻松地维护自己的子项目补丁,直到您准备好将它们提交到上游。

    【讨论】:

      【解决方案3】:
      【解决方案4】:

      --编辑

      删除了我“可能不可能”的说法。我的其余论点仍然有效。

      但无论如何,一般来说,您不希望如此快地获得更新。您希望拥有他的库的“稳定”版本,并且仅在发布另一个“稳定”版本时更新它(经您测试;不一定是他认为“稳定”的版本)。

      因此,即使您可以(但在我使用的 SVN 中,您不能,但我不具体了解 git)您也不想这样做。

      【讨论】:

      • 用所谓的externals就可以轻松实现
      • 是的,显然我不想一直更新外部库,但我想知道是否有比仅下载更改的 .zip 并将其放入我的 repo 更好的方法。
      • iElectric - 不知道。谢谢。汤姆我的意思是,即使可以,最好不要这样做。
      猜你喜欢
      • 2023-03-11
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      • 2015-07-23
      • 2011-06-07
      • 1970-01-01
      • 2017-06-03
      • 2019-02-08
      相关资源
      最近更新 更多