You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Git Subtree仅克隆目标仓库的指定文件夹?

实现Git Subtree只同步指定仓库的特定文件夹到目标目录

方法一:通过临时分支过滤内容(支持后续用subtree同步更新)

  • 添加远程仓库并拉取内容
    git remote add -f books-upstream <待添加仓库的Git URL>
    
  • 创建临时分支,仅拉取远程仓库的booksrepo文件夹
    git checkout -b temp-books-branch books-upstream/master -- booksrepo
    
  • 调整临时分支的目录结构,将booksrepo下的内容移到根目录
    git mv booksrepo/* .
    git rm -r booksrepo
    git commit -m "提取booksrepo内容到分支根目录"
    
  • 将临时分支作为subtree添加到主仓库的books目录
    git subtree add --prefix=books temp-books-branch --squash
    
  • 清理临时分支(可选)
    git branch -D temp-books-branch
    

后续需要同步更新时,重复上述步骤2-4即可,或者拉取远程分支后更新临时分支再合并。

方法二:用Git Archive直接导出导入(操作更简洁,适合单次或简单更新)

  • 从远程仓库导出booksrepo文件夹内容到本地books目录(自动去掉外层booksrepo目录)
    git archive --remote=<待添加仓库的Git URL> master booksrepo | tar -x --strip-components=1 -C books
    
  • 将导入的文件提交到主仓库
    git add books
    git commit -m "从远程仓库添加books目录内容"
    

后续同步更新时,重复执行上述两个步骤即可。

内容的提问来源于stack exchange,提问作者omega

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 06:45:19