---
title: "Git LFS (Large File Storage): Quản Lý Tệp Tin Lớn Hiệu Quả Trong Repository"
description: "Git LFS (Large File Storage): Quản Lý Tệp Tin Lớn Hiệu Quả Trong Repository"
date: "2026-09-07"
author:
  name: "Nguyen Pham"
  role: "Xin chào. Mình thích lập trình và công nghệ. Đây là blog mình chia sẻ lại các kiến thức về lập trình, công nghệ."
  avatar: "http://0.gravatar.com/avatar/6fb61398e24046b34e13870dd6c357b9?s=128&d=mm&r=g"
category: "Blog"
tags: ["Blog"]
coverImage: "/blog/covers/git-lfs-large-file-storage-quan-ly-tep-tin-lon-hieu-qua-trong-repository.png"
featured: false
readingTime: "5 min read"
---

Bạn đã bao giờ gặp khó khăn khi đẩy các tệp media, mô hình 3D hay dataset khổng lồ lên GitHub? **Git LFS** – hay *Large File Storage* – chính là giải pháp giúp bạn **quản lý tệp tin lớn** trong repository một cách nhanh chóng, gọn gàng và an toàn.

## 🔎 Git LFS là gì?

Git LFS (Large File Storage) là một extension của Git được thiết kế để thay thế các tệp tin có kích thước lớn bằng *pointer* (đại diện) trong lịch sử commit, trong khi nội dung thực tế được lưu trữ trên một server riêng biệt.

## 🛠️ Tại sao nên dùng Git LFS?

- **Tốc độ clone và fetch nhanh hơn:** Repository chỉ chứa các pointer, giảm đáng kể dung lượng tải về.
- **Giảm áp lực lên máy chủ Git:** Các tệp lớn không chiếm chỗ trong lịch sử commit, giúp server xử lý nhẹ hơn.
- **Quản lý phiên bản tệp lớn:** Bạn vẫn có thể theo dõi thay đổi của các file nhị phân mà không lo “binary lock”.
- **Tương thích với các dịch vụ phổ biến:** GitHub, GitLab, Bitbucket đều hỗ trợ Git LFS ngay từ đầu.

## 🚀 Cài đặt và cấu hình Git LFS

### Bước 1: Cài đặt Git LFS

Trên Windows, macOS hoặc Linux, chỉ cần chạy một lệnh đơn giản:

```
git lfs install
```

### Bước 2: Đánh dấu các tệp lớn

Sử dụng `git lfs track` để chỉ định các loại file muốn lưu trữ bằng LFS, ví dụ:

```
git lfs track "*.psd"
git lfs track "assets/**/*.mp4"
```

Sau khi chạy, Git sẽ tự động cập nhật file `.gitattributes` với các rule trên.

### Bước 3: Thêm, commit và push như bình thường

Những tệp được track sẽ được thay thế bằng pointer khi bạn commit. Khi push, Git LFS sẽ tải các tệp thực tế lên server LFS tương ứng.

## 💡 Các mẹo thực tiễn khi dùng Git LFS

- **Giới hạn kích thước:** Hầu hết các dịch vụ giới hạn kích thước tệp LFS (ví dụ GitHub: 2 GB/tệp). Kiểm tra giới hạn trước khi commit.
- **Sử dụng .gitattributes một cách cẩn thận:** Đảm bảo chỉ track những loại file thực sự cần LFS, tránh lãng phí băng thông.
- **Kiểm soát quota:** Theo dõi lượng lưu trữ LFS của bạn trong bảng điều khiển của GitHub/GitLab để tránh bị “over‑quota”.
- **Cache cục bộ:** Git LFS lưu trữ các tệp đã tải về trong `~/.git-lfs`, giúp làm việc offline nhanh hơn.

## 🔧 Giải quyết các vấn đề thường gặp

### 1. Lỗi “object not found” khi clone

Đảm bảo máy của bạn đã cài `git lfs` và chạy `git lfs pull` sau khi clone.

### 2. Quá nhiều dữ liệu LFS trên server

Sử dụng lệnh `git lfs prune` để xóa các tệp LFS không còn được tham chiếu trong lịch sử hiện tại.

### 3. Cần di chuyển repository sang server mới

Thực hiện `git lfs migrate export --everything` để chuyển toàn bộ nội dung LFS trở lại Git bình thường, sau đó push lên server mới.

## 📚 Tham khảo thêm

- [Git LFS – Official Site](https://git-lfs.github.com/)
- [GitHub Docs: About Git LFS](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-git-large-file-storage)
- [Pro Git – Large File Storage](https://git-scm.com/book/en/v2/Git-Tools-Large-File-Storage)

## Kết luận

Với **Git LFS**, việc *quản lý tệp tin lớn* trong repository không còn là nỗi lo. Bạn có thể giữ cho lịch sử Git nhẹ, giảm thời gian clone và vẫn duy trì khả năng versioning cho các file nhị phân quan trọng. Hãy áp dụng các bước cài đặt và mẹo thực tiễn ở trên để tối ưu hoá workflow của mình ngay hôm nay!

© 2026 BlogTech. All rights reserved.
