如何从现有 git 存储库中的文件夹创建新的 git 存储库?
我想在现有 git 存储库下的文件夹中创建一个新的 git 存储库。我希望将历史记录保留在新存储库中。如何创建这个新的 git 存储库?
I want to create a new git repository of a folder under an existing git repository. I want the history to be preserved in the new repository. How do I create this new git repository?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以克隆它,然后在克隆上应用过滤器分支,以便拆分该存储库,仅提取您想要的目录(及其完整历史记录)。
请参阅 将子目录分离到单独的 Git 存储库
请注意
git 克隆 --克隆步骤中使用的无硬链接 /XYZ /ABC
:You can clone it, and then apply on the clone a filter-branch in order to split that repository, extracting only the directory you want (with its full history).
See Detach subdirectory into separate Git repository
Note the
git clone --no-hardlinks /XYZ /ABC
used during the cloning step:假设您只想将子目录保留为单独的项目:您可以使用 git filter-branch 来实现。
您现在有一个与正常开发流无关的单独分支,仅包含子目录。克隆新分支的人只能获得子项目历史记录。
Assuming you only want to keep the subdirectory as a separate project: you can use
git filter-branch
for that.git filter-branch --tree-filter=/path/to/script thebranch
You now have a separate branch that is not related to the normal development stream, containing just the subdirectory. Whoever clones the new branch gets only the subproject history.
您可以克隆它并保留您想要的文件;历史将被保存。
You can clone it and keep the files you want; history will then be preserved.