我将一个存储库克隆到我的项目中。我应该在我的项目回购中承诺回购吗?

时间:2015-07-03 12:32:12

标签: git github version-control

有一个软件包(Composer和其他软件包管理器无法提供)我需要在我的项目中使用它。

所以我将其克隆到供应商目录中。 现在我想将我的项目文件推送到另一个git存储库。

该怎么办?将其文件夹添加到.gitignore?

1 个答案:

答案 0 :(得分:1)

您可以将其添加为submodule

您的存储库将保留:

  • 源代码库的URL
  • 提交的SHA1,即您需要的版本。

例如:

$ git submodule add http://link/to/reference/repo vendor

您可能需要先移动目录vendor

如果您在vendor中修改了某些内容并提交了这些更改,那么您的热门回购会将其标记为更改:正在使用的vendor提交已更改。这样,您可以在顶部仓库中跟踪每个提交所需的vendor版本。

注意:submodules在结账时有点特别。您的热门仓库中的结帐更新vendor的SHA1有效,但不会更新工作文件本身。要做到这一点,您需要在结帐后立即git submodule update