如何通过Python克隆Git LFS仓库?
解决GitPython克隆Git LFS仓库仅下载指针的问题
GitPython默认不会自动触发Git LFS的实际文件拉取,所以克隆后只会得到LFS指针文件,你可以用以下两种方法解决:
方法一:克隆后手动执行LFS拉取
先完成仓库克隆,再调用Git LFS的pull命令拉取实际文件:
from git.repo.base import Repo # 克隆仓库 repo = Repo.clone_from("https://foo.bar/baz", "./foo/bar/") # 拉取LFS实际文件 repo.git.lfs("pull")
方法二:克隆时配置自动拉取LFS文件
在克隆过程中指定Git配置,让Git自动处理LFS文件的拉取:
from git.repo.base import Repo repo = Repo.clone_from( "https://foo.bar/baz", "./foo/bar/", config=["lfs.fetchinclude=*"] # 配置拉取所有LFS文件,也可以指定特定路径 )
注意:确保你的系统已经安装了Git LFS工具,因为GitPython是通过调用本地Git命令来处理LFS操作的,没有安装的话会执行失败。
内容的提问来源于stack exchange,提问作者angryweasel
相关产品推荐
相关产品推荐

