首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

【Git系列】Git LFS常用命令的使用

  • 25-03-08 01:03
  • 2297
  • 7459
blog.csdn.net

前言

LFS是Large File Storage的缩写,是一个 Git 扩展,用于管理大型二进制文件,它允许将这些文件存储在单独的存储库中,以便更有效地处理 Git 仓库。

常用命令

LFS安装

git lfs 要求 git >= 1.8.2

linux环境:

git lfs install
  • 1

执行显示

Updated Git hooks.
Git LFS initialized.
  • 1
  • 2

开启lfs功能

建立代码仓

git clone
  • 1

更建议以下这种方式

git lfs clone
  • 1

出现以下报错时,

error: external filter git-lfs smudge -- %f failed
  • 1

需要执行

git lfs install --skip-smudge
  • 1

查询命令

git lfs track

git lfs track不带任何参数时,可以查看当前已跟踪的Git LFS File 类型

git lfs track
  • 1

显示

Listing tracked patterns
    *.exe (.gitattributes)
    *.zip (.gitattributes)
Listing excluded patterns
  • 1
  • 2
  • 3
  • 4

git lfs ls-files

显示当前跟踪的文件列表

git lfs ls-files
  • 1

git lfs status

显示跟踪文件的当前状态

git lfs status
  • 1

配置追踪命令

要使用Git LFS跟踪大文件,你需要使用git lfs track 命令(带参数)。
例如,追踪zip文件。

git lfs track "*.zip"
  • 1

track 命令实际上是修改了仓库中的.gitattributes文件,使用git add命令将该文件添加到暂存区。

git add .gitattributes
  • 1

注意:.gitattributes与.git同级目录,否则会出现git push失败的情况。
使用git commit提交至仓库,使配置追踪生效。

git commit -m "添加.zip lfs配置"
  • 1

使用git push推动至远程仓库,LFS跟踪的文件会以“Git LFS”的形式显示。

撤销追踪命令

要撤销Git LFS跟踪大文件,你需要使用git lfs untrack 命令(带参数)
例如,撤销追踪zip文件。

git lfs untrack "*.zip"
  • 1

使用git rm --cached清理缓存。

git rm --cached "*.zip"
  • 1

提交推送

设置好了GIT LFS后,可以使用git命令提交和推送。Git LFS将自动处理大文件的上传和下载。

git add .
git commit -m "Add large files"
git push origin master
  • 1
  • 2
  • 3

拉取

在拉取更改或切换分支时,Git LFS会自动下载所需的大文件。

git pull origin master
git checkout test-branch
  • 1
  • 2

git lfs fetch/pull

git lfs fetch和git lfs pull 是用于从远程仓库中拉取 LFS文件的命令,但它们之间有一些区别。

git lfs fetch

git lfs fetch命令会从远程仓库中获取所有缺失的Git LFS对象,但不会将这些对象应用到你的工作目录中。如果你想将这些对象应用到你的工作目录中,你需要使用git lfs checkout命令。

git lfs pull

git lfs pull命令会从远程仓库中获取所有缺失的Git LFS对象,并将这些对象应用到你的工作目录中。如果你的工作目录中已经存在了这些对象,那么git lfs pull命令会跳过这些对象。

git lfs pull提速

使用 Git LFS 的批量下载功能,可以通过命令 git lfs fetch --all 来实现。

git lfs fetch --all
  • 1

使用 Git LFS 的并发下载功能,可以通过命令 git config --global lfs.concurrenttransfers 10 来设置并发下载数。

git config --global lfs.concurrenttransfers 10 
  • 1

使用 Git LFS 的加速器,可以通过配置 Git LFS 的配置文件来实现。

锁定与解锁

git lfs lock

锁定大文件,以防止其他人修改。

git lfs lock xxx.zip
  • 1

git lfs unlock

解锁大文件,允许其他人修改。
通过git lfs lock命令,你可以锁定大文件,以防止其他人修改它们。解锁文件允许其他人继续修改文件。

git lfs unlock xxx.zip
  • 1

LFS文件过滤与下载

LFS文件过滤

该命令将自动过滤LFS文件,不会在git clone时下载lfs文件。

git config --global filter.lfs.smudge "git-lfs smudge --skip -- %f"
git config --global filter.lfs.process "git-lfs filter-process --skip"
  • 1
  • 2

gLFS文件下载

该命令将自动下载LFS文件,在git clone时下载lfs文件。

git config --global filter.lfs.smudge "git-lfs smudge -- %f"
git config --global filter.lfs.process "git-lfs filter-process"
  • 1
  • 2
文章知识点与官方知识档案匹配,可进一步学习相关知识
Git技能树首页概览7709 人正在系统学习中
注:本文转载自blog.csdn.net的may-daydayup的文章"https://blog.csdn.net/weixin_54954007/article/details/139621610"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

132
搜索
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top