Soạn quy tắc bỏ qua file

Công cụ tạo .gitignore

Chọn những công nghệ dự án đang dùng để gom các quy tắc bỏ qua file. Thêm đường dẫn riêng, kiểm tra bản xem trước rồi tải .gitignore về.

Soạn quy tắc bỏ qua fileTạo ngay trong trình duyệt
Bắt đầu từ cấu hình

01 Chọn mẫu

Ngôn ngữ và framework
Trình soạn thảo
Hệ điều hành
Quy tắc khác

Mỗi dòng một quy tắc. Giữ nguyên thứ tự và khoảng trắng cuối dòng.

02 .gitignore

Số mẫu: 3 · Số dòng: 23

Kiểm tra rồi lưu ở thư mục gốc kho mã hoặc gộp với file hiện có. File đã được Git theo dõi không bị ảnh hưởng.

Tạo .gitignore trước khi thêm file vào Git

Thư mục phụ thuộc, cache và kết quả build thường có thể tạo lại. Hãy bắt đầu từ các nhóm này thay vì bỏ qua mọi file có vẻ không cần thiết. Dự án Next.js nên chọn cả Node.js; dự án Java cần chọn Maven hoặc Gradle theo cách build thực tế.

Có 18 mẫu cơ bản được tích hợp sẵn, không phải toàn bộ kho mẫu GitHub. Công cụ không đọc hay nhận diện dự án. Lưu kết quả với tên .gitignore, có dấu chấm đầu tên, và gộp cẩn thận nếu kho mã đã có file này.

Giữ cấu hình cần cho cả nhóm

Mẫu VS Code và JetBrains chỉ nhắm đến một số dữ liệu cá nhân, không loại bỏ toàn bộ cấu hình chia sẻ. Các quy tắc chỉ dành cho máy của bạn có thể đặt trong .git/info/exclude.

Các file khóa phiên bản phổ biến vẫn được giữ để commit. Với package-lock.json, Cargo.lock hay composer.lock, hãy quyết định theo quy trình của dự án và loại sản phẩm, thay vì tự động bỏ qua mọi file lock.

Ba ví dụ để bắt đầu

Dự án Next.js

Thư viện Node.js, kết quả Next.js và siêu dữ liệu macOS; vẫn giữ file khóa phiên bản.

Quay lại công cụ
# Tạo bằng công cụ Gitignore của LightNode
# Kiểm tra các quy tắc cơ bản trước khi đưa vào dự án.

# Node.js
node_modules/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-store/
coverage/
.nyc_output/

# Next.js
.next/
out/
.vercel/
*.tsbuildinfo

# macOS
.DS_Store
._*
.Spotlight-V100/
.Trashes/

Môi trường Python

Môi trường ảo và cache Python, lịch sử VS Code cùng bản sao lưu Linux.

Quay lại công cụ
# Tạo bằng công cụ Gitignore của LightNode
# Kiểm tra các quy tắc cơ bản trước khi đưa vào dự án.

# Python
__pycache__/
*.py[cod]
.venv/
venv/
.pytest_cache/
.mypy_cache/
.ruff_cache/
.coverage
htmlcov/
*.egg-info/

# VS Code
.history/
*.vsix

# Linux
.Trash-*/
*~

Java với IntelliJ

Kết quả Maven, Gradle, trạng thái cá nhân JetBrains và siêu dữ liệu Windows. Bỏ chọn công cụ build không dùng.

Quay lại công cụ
# Tạo bằng công cụ Gitignore của LightNode
# Kiểm tra các quy tắc cơ bản trước khi đưa vào dự án.

# Java / Maven
*.class
target/

# Gradle
.gradle/
build/

# JetBrains
.idea/workspace.xml
.idea/tasks.xml
.idea/shelf/
.idea/httpRequests/

# Windows
Thumbs.db
ehthumbs.db
Desktop.ini
$RECYCLE.BIN/

Câu hỏi khi dùng .gitignore

Vì sao file vẫn xuất hiện dù đã thêm vào .gitignore?

Git không ngừng theo dõi file đã có trong chỉ mục. Dùng git check-ignore -v --no-index path/to/file để kiểm tra quy tắc khớp. Nếu cần ngừng theo dõi, git rm --cached -- path/to/file đưa thao tác xóa khỏi kho mã vào vùng tạm, nhưng giữ bản cục bộ. Kiểm tra thay đổi trước khi commit.

Làm sao giữ lại một file log?

Thêm /logs/*, rồi !/logs/keep.log. Không bỏ qua chính thư mục cha bằng /logs/, vì Git không thể đưa file bên trong thư mục đã bị loại vào lại.

Quy tắc trùng nhau có bị xóa không?

Không. Ở cùng mức ưu tiên, quy tắc khớp sau cùng có hiệu lực. Các mẫu theo thứ tự cố định và quy tắc bổ sung nằm ở cuối. Đổi cấu hình vẫn giữ nội dung nhập; Xóa tất cả xóa cả mẫu lẫn nội dung.

Có giữ được .env.example không?

Mẫu môi trường bỏ qua .env.env.*, nhưng giữ .env.example cùng .env.sample. Chỉ dùng giá trị mẫu trong các file này. Quy tắc bỏ qua không xóa thông tin bí mật trong commit cũ.

Nội dung có được lưu trên máy chủ không?

Quá trình tạo chạy trong trình duyệt với mẫu tích hợp sẵn, không tải kho mã lên hay gọi API tạo file. Quy tắc bổ sung không được lưu lâu dài hoặc đưa vào URL.

Tài liệu chính thức của Git