Git 大文件存储 (LFS)

打印 上一主题 下一主题

主题 887|帖子 887|积分 2661

Git 大文件存储 (LFS)

什么是 Git LFS?

官方:https://git-lfs.com/
官方文档: https://github.com/git-lfs/git-lfs/blob/main/docs/spec.md
Git LFS 是 Git 的扩展,它可提供用于描述提交到存储库中的大型文件的数据。 它会将二进制文件内容存储在单独的远程存储中。
当你在存储库中克隆和切换分支时,Git LFS 会从该远程存储下载正确的版本。 本地开辟工具将以透明方式处理文件,就如同这些文件是直接提交到存储库一样。
Git LFS 的上风在于,无论你的团队创建哪种文件,均可使用他们认识的端到端 Git 工作流。 LFS 可处理大型文件,以免它们对整个存储库产生不利影响。
The core Git LFS idea is that instead of writing large blobs to a Git repository, only a pointer file is written.
Git LFS 的焦点头脑是,不是将大型 blob 写入 Git 存储库,而是只写入指针文件。
   Git LFS 是一个 Git 扩展,答应用户通过在不同位置存储二进制文件来节省空间。
  安装

使用 Git LFS 之前,您必须先在计算机上安装 Git LFS。您还必要设置 Git LFS 服务器
  1. git lfs install
复制代码
在要使用 Git LFS 的每个 Git 存储库中,选择希望 Git LFS 管理的文件范例(或直接编辑 .gitattributes)。您可以随时配置其他文件扩展名。
使用 git lfs track 命令查察和添加到 .gitattributes。
  1. git lfs track "*.psd"
复制代码
确保 .gitattributes 被跟踪:
  1. git add .gitattributes
复制代码
  1. *.out filter=lfs diff=lfs merge=lfs -text
  2. *.so filter=lfs diff=lfs merge=lfs -text
复制代码
filter=lfs 表示使用 Git LFS 过滤器,diff=lfs 表示在差异比较时将使用 LFS 过滤后的指针,merge=lfs 表示合并时也会使用 LFS 过滤后的指针,而 -text 则表示这些文件应该被视为二进制文件,而非文本文件。
使用

如果你的 Git 仓库使用了 Git LFS(Large File Storage),在实行 git pull
之后,你通常必要单独实行 git lfs pull
来下载 LFS 管理的文件。
实行 git pull

  1. git pull
复制代码
实行 git lfs pull

  1. git lfs pull
复制代码
在实行 git lfs pull
之前,使用以下命令查察当前 LFS 文件的状态:
  1. git lfs ls-files
复制代码
参考

微软官方文档: https://learn.microsoft.com/zh-cn/azure/devops/repos/git/manage-large-files?view=azure-devops
gitlab官方文档:Git 大文件存储 (LFS)
参考URL: https://docs.gitlab.cn/jh/topics/git/lfs/index.html

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

熊熊出没

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表