【Git】git lfs自动跟踪大文件

  1. 安装Git LFS:git lfs install
  2. 创建文件 detect_large_files.sh :touch detect_large_files.sh
  3. 编辑文件detect_large_files.sh后保存
bash 复制代码
#!/bin/bash

# 设置阈值,单位字节,100MB = 100 * 1024 * 1024
THRESHOLD=$((100 * 1024 * 1024))

# 遍历项目文件
find . -type f ! -path "./.git/*" | while read file; do
    size=$(stat -c%s "$file")
    if [ $size -gt $THRESHOLD ]; then
        ext="${file##*.}"
        echo "检测到大文件: $file (${size} bytes)"
        pattern="*.$ext"
        
        # 如果这个类型还没被 track,则添加 track 规则
        if ! grep -q "$pattern" .gitattributes 2>/dev/null; then
            echo "添加 Git LFS 跟踪规则: $pattern"
            git lfs track "$pattern"
        fi
    fi
done
 
  1. 赋予脚本执行权限:chmod +x detect_large_files.sh

5.运行脚本:./detect_large_files.sh

  1. 查看已经跟踪的文件:git lfs track

  2. 把改动提交:

git add .gitattributes

git commit

相关推荐
霖0014 小时前
FPGA的PS基础1
数据结构·人工智能·windows·git·算法·fpga开发
盗骊16 小时前
Git rebase
git
芝麻馅汤圆儿17 小时前
Git Bash
git
六件套是我18 小时前
在idea中git切换分支,但是我的文件没add,没commit
git
Pi_Qiu_18 小时前
Rsync自动化备份平台建设实战
git·自动化·github
parade岁月2 天前
Git黑科技:让你的配置文件"隐身",再也不用担心误提交!
git
无名咸鱼2 天前
Git与CI/CD相关知识点总结
git·ci/cd
先天打工圣体的男人2 天前
Linux环境gitlab多种部署方式及具体使用
运维·git·gitlab
文慧的科技江湖2 天前
git配置proxy
git
小獾哥2 天前
Centos8系统在安装Git包时,报错:“没有任何匹配: git”
大数据·git·elasticsearch