从git repo中的单个/多个现有文件创建库?

时间:2016-01-18 07:41:08

标签: git github

我有一个项目的私人git仓库。

在那里,存在一些我希望作为单独的库提供的文件,因为它们不是特定于应用程序并且可以重复使用。

有没有办法分叉一个git repo,以便它只包含这几个文件,保留版本历史但忽略所有其他文件?

其他文件需要保密,所以我不能简单地拆分整个仓库并将其删除以备将来提交。

1 个答案:

答案 0 :(得分:0)

  

在那里,存在一些我希望作为单独的库提供的文件

你应该是子模块。

enter image description here

子模块是另一个项目中的独立项目,它在自己的文件夹中自我管理。

在您的情况下,因为您已经将代码放在一个大的存储库中,所以您必须将其分解为小块。

  

所以我不能简单地将整个仓库分叉并将其移除以备将来提交。

为此,请使用此工具bfc 在您的情况下,只需将您要更改的subfolders清除为submodules,然后将其从历史记录中完全删除。

enter image description here

重要提示:

按照上述步骤将对您的分支机构执行rebase,因此您必须知道rebase的后果,这将导致每个使用此分支的人员删除它并在您的更改后再次克隆它。