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 và .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.
