git子树签出其他名称下的特定文件夹

git子树签出其他名称下的特定文件夹,git,git-subtree,Git,Git Subtree,嗨,我想用两条上游建立一个git回购协议 上游接缝WP:() 整个根文件夹/转到根目录下的my repo/。(没问题) 上游商业:() 此回购/模板的子目录应位于我的回购中的/woocommerce下 通过使用sparseCheckout,我能够使/templates成为我的repo中唯一的文件夹/树 我尝试使用git子树来跟踪提交 当我使用git子树时。我如何在我的回购协议中从上游到商业的/templates处签出内容 如果我的问题没有我希望的那么直接,请给我一个提示;) 您应该将

嗨,我想用两条上游建立一个git回购协议

  • 上游接缝WP:()

    • 整个根文件夹/转到根目录下的my repo/。(没问题)
  • 上游商业:()

    • 此回购/模板的子目录应位于我的回购中的/woocommerce下
    • 通过使用sparseCheckout,我能够使/templates成为我的repo中唯一的文件夹/树
    • 我尝试使用git子树来跟踪提交
当我使用git子树时。我如何在我的回购协议中从上游到商业的/templates处签出内容


如果我的问题没有我希望的那么直接,请给我一个提示;)

您应该将
拆分
添加
组合起来

因此,您可以克隆您想要参与的项目,然后在其中创建一个分支,该分支将包含
模板/
。即

git subtree --prefix=templates/ split -b templates_only
然后,您可以使用其他回购协议的分支:

git subtree --prefix=woocommerce/ add ../woocommerce_clone/.git templates_only

谢谢你的回复。这很有效。但从表现的角度来看,这是一种痛苦。子目录中有5k+个提交被重新刷新。分裂要花很长时间。有没有办法加快速度,或者我应该使用git子模块来代替?@termnml子模块可以吗?我怀疑。据我所知,您别无选择,拆分应该遍历所有提交,并查看其中哪些会影响子目录。
拆分的唯一好处是-只需执行一次,就可以更快地拉动/推动子树。非常感谢您的帮助。;)