<分区>
我有一个包含子目录的 git 存储库。示例 dirA/dirB。
有什么方法可以在 Unix 服务器上执行 git clone
以仅从子目录 (dirB) 中提取文件?
除了 clone 之外,还有其他 git 命令可以执行此操作吗?
我如何 git 一个特定的文件?
<分区>
我有一个包含子目录的 git 存储库。示例 dirA/dirB。
有什么方法可以在 Unix 服务器上执行 git clone
以仅从子目录 (dirB) 中提取文件?
除了 clone 之外,还有其他 git 命令可以执行此操作吗?
我如何 git 一个特定的文件?
最佳答案
假设您的项目位于名为 project
的目录中,并且您只需要那些触及 project/dirB
的提交。
然后:
git clone project/ subproject/
cd subproject
git filter-branch --prune-empty --subdirectory-filter dirB HEAD
subproject
现在将包含触及 dirB
的 git 历史。
关于git - 使用 git 只克隆一个子目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11834386/