Git:如何将私人仓库中的子文件夹作为 public 仓库而不将其从父仓库中分离出来?

Git: how to make a subfolder in a private repo as a public repo without splitting it out from the parent repo?

我看到有很多讨论都在谈论将现有存储库的子文件夹拆分为单独的 Git存储库。我的问题是我可以只初始化现有 Git 存储库的子文件夹并将其作为新文件夹推送到远程位置吗?我不关心子文件夹的过去历史是否保留在新的 repo 中,但我实际上只想共享子文件夹以允许人们对其做出贡献,同时让父 Git 项目轻松跟踪所有更改子文件夹。

更多细节:我已经通读了一些使用Submodule的方法,但这不是我想要的理解。当我检查我的父存储库或内部协作者提取父存储库的更改时,我希望子文件夹中的所有更改也能同步。也许 subtree 都不适合我,但是在网上看了一些帖子后,我实际上不确定自己的判断。我更喜欢有一个简单的解决方案,比如将子文件夹初始化为一个新文件夹并推送...是否有效。

感谢您的意见!

can I just initialize a subfolder of an existing Git repository and push it to a remote place as a new one?

没有。 Git-repo 是整体对象,任何|树的所有更改 inside repo 作为独立对象

对外部视图不可见

Submodule, but that is not what I want from my understanding

您必须验证您的理解并修复它。按子模块构建假设 支持父仓库和子模块状态之间的 link,并且此 link 反映了双方的变化