git子树:内部项目包括外部项目的整个历史。这是预期的吗?

git子树:内部项目包括外部项目的整个历史。这是预期的吗?,git,git-subtree,Git,Git Subtree,我的出发点是一个大型私人项目,其中一些部分我想公开。我安排了所有公共部分的位置 在一个子目录内。我想我应该把它作为一个单独的回购协议,使用git子树拆分取出提交。最初的分裂 给了我我所期望的:一个新的断开连接的分支,在子目录上有几个提交 然后,根据一些可能有疑问的建议,我删除了该子目录,并用git subtree add将其添加回来。后来,我执行了第二次剥离,并将初始断开连接的分支与提交链接 通过git子树添加。我将结果推送到子树repo,发现它现在包含了外部项目的完整历史。图中显示了我在子树回

我的出发点是一个大型私人项目,其中一些部分我想公开。我安排了所有公共部分的位置 在一个子目录内。我想我应该把它作为一个单独的回购协议,使用
git子树拆分
取出提交。最初的分裂
给了我我所期望的:一个新的断开连接的分支,在子目录上有几个提交

然后,根据一些可能有疑问的建议,我删除了该子目录,并用
git subtree add
将其添加回来。后来,我执行了第二次剥离,并将初始断开连接的分支与提交链接 通过
git子树添加
。我将结果推送到子树repo,发现它现在包含了外部项目的完整历史。图中显示了我在子树回购协议中看到的结构

这是预期的吗?有办法避免吗