0

0

如何使用 Git LFS 将大文件推送到 git 存储库

花韻仙語

花韻仙語

发布时间:2024-10-04 17:33:01

|

1170人浏览过

|

来源于dev.to

转载

如何使用 git lfs 将大文件推送到 git 存储库

所以我最近正在做一个项目,我必须使用高分辨率资产,因此它们的尺寸很大。我无法将文件推送到我的存储库。每当我尝试时,我都会收到以下错误:

远程:错误:文件 file.csv 为 182.47 mb​​;这超出了 github 的文件大小限制 100.00 mb
远程:错误:gh001:检测到大文件。您可能想尝试 git 大文件存储 - https://git-lfs.github.com。

现在我们来谈谈 git 扩展 git lfs 以及如何使用它。

git large file storage (lfs) 是一个 git 扩展,旨在更有效地处理存储库中的大文件。

1。什么是 git?

git 是一个版本控制系统,可让您跟踪代码更改并与其他人协作。通常,git 将所有内容(文件、代码等)直接保存到您的存储库中,包括任何图像、视频或大型二进制文件。

2。为什么我们需要 git lfs?

默认情况下,git 存储所有内容,但高分辨率图像、视频或数据集等大文件可能会使您的存储库变得非常大且速度慢。每次您推送或拉取更改时,git 都会下载所有数据,这会花费时间并占用您计算机上更多的存储空间。

git lfs 旨在通过以下方式更有效地处理这些大文件:

  • 单独存储大文件:git lfs 不是将大文件直接保存在存储库中,而是用指针(小引用)替换它们。实际文件存储在存储库外部的单独位置。

  • 保持存储库轻便:这样,您的存储库就会保持轻量级且快速,因为 git 仅在您需要时下载大文件。

3.git lfs 是如何工作的?

当您将大文件(例如视频或图像)添加到存储库时,git lfs 会将其替换为小指针文件。

指针文件告诉 git lfs 大文件实际存储在哪里。
当其他人克隆您的存储库或拉取更改时,他们将获得指针文件而不是大文件本身,除非他们明确拉取大文件。

4。 git lfs 入门

要开始在项目中使用 git lfs,请按照以下步骤操作:

Napkin AI
Napkin AI

Napkin AI 可以将您的文本转换为图表、流程图、信息图、思维导图视觉效果,以便快速有效地分享您的想法。

下载

1.安装git lfs:您需要在您的计算机上安装git lfs。对于大多数系统,这是通过运行以下命令来完成的:

git lfs install

2.跟踪大文件:安装后,您需要告诉 git lfs 要跟踪哪些文件(例如,所有 .png 文件或 _.mp4 _files)。这是使用 git lfs track 命令完成的:

git lfs track "*.png"

这告诉 git lfs 跟踪所有以 .png.

结尾的文件

3.提交更改:运行 track 命令后,git lfs 创建一个 .gitattributes 文件,该文件定义要跟踪的文件的规则。您需要将此文件提交到您的存储库:

git add .gitattributes
git commit -m "track large files using git lfs"

4.添加并推送大文件:现在,当您添加大文件(例如视频或图像)时,git lfs 将自动管理它:

git add largefile.mp4
git commit -m "add large video file"
git push

注意
确保在提交大文件之前已经初始化并设置了 lfs,否则 git lfs 在推送时不会跟踪该文件。并且您将继续像以前一样收到错误。我刚开始使用 git lfs 扩展时也遇到了这个问题。

5。拉取大文件:
当有人克隆或拉取您的存储库时,他们将默认获得轻量级指针文件。如果他们想要实际的大文件,他们可以使用以下命令将其下拉:

git lfs pull

6。 git lfs 的好处

  • 加速 git 操作:您的存储库保持快速,因为 git 不必直接处理大文件。

  • 减少存储使用:大文件单独存储,从而减少存储库的大小。

  • 高效协作:仅在需要时下载必要的大文件。

7。 git lfs 的缺点

  • 存储限制:某些平台(如 github)为 lfs 提供有限的免费存储空间,如果您有大量大文件,您可能需要支付额外的存储空间。

  • 大文件拉取速度较慢:如果您有很多大文件并一次下载它们,仍然可能需要时间,尽管与常规 git 相比,git lfs 对此进行了优化。

请随意添加评论或问题。我很乐意回复他们

相关专题

更多
自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

637

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

524

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

262

2023.07.24

git提交错误怎么撤回
git提交错误怎么撤回

git提交错误撤回的方法:git reset head^:撤回最后一次提交,恢复到提交前状态。git revert head:创建新提交,内容与之前提交相反。git reset :使用提交的 sha-1 哈希撤回指定提交。交互式舞台区:标记要撤回的特定更改,然后提交,排除已撤回更改。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

539

2024.04.09

git怎么对比两个版本的文件内容
git怎么对比两个版本的文件内容

要对比两个版本的 git 文件,请使用 git diff 命令:git diff 比较工作树和暂存区之间的差异。git diff 比较两个提交或标签之间的差异。git diff 输出显示差异块,其中 + 表示添加的行,- 表示删除的行, 表示修改的行。可使用 gitkraken、meld、beyond compare 等可视化工具更直观地查看差异。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

511

2024.04.09

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1720

2024.08.16

php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

65

2025.12.31

php网站源码教程大全
php网站源码教程大全

本专题整合了php网站源码相关教程,阅读专题下面的文章了解更多详细内容。

43

2025.12.31

视频文件格式
视频文件格式

本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。

35

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Git 教程
Git 教程

共21课时 | 2.3万人学习

Git版本控制工具
Git版本控制工具

共8课时 | 1.5万人学习

Git中文开发手册
Git中文开发手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号