git sparseCheckout repo 将完整仓库推送到远程

git sparseCheckout repo 将完整仓库推送到远程

我找到了一个 git repo,里面有我需要的东西,但只有一部分。所以我拉取了它的内容sparseCheckout=true并设置了sparse-checkout文件。

拉取后,本地仓库看起来不错。但当我尝试将此仓库推送到另一个远程 git 仓库时,它似乎忽略了稀疏结帐配置并将完整的 repo 推送到我的新远程。

我怎样才能让 git 仅将我本地的所有内容推送到我的新远程?

答案1

你不能。稀疏的结账就是稀疏的查看– 它只会更改提取到工作目录中的文件,而不会修改实际的提交历史记录,也不会更改传输的内容。每次提交仍包含整个存储库的完整快照,并且 Git 不会让您下载提交的部分,也不会让您推送提交的部分。(是的,这也意味着您git pull也下载了整个内容。)

(这与浅克隆不同,Git 实际上避免传输比请求的更旧的提交。)

相关内容