.gitkeep

Khi bắt đầu một dự án xây dựng web, một trong những công việc đầu tiên là tạo cấu trúc thư mục(code structure) cho trang web và commit cấu trúc thư mục này lên repo. Ví dụ thiết kế một cấu trúc thư mục như thế này cho một trang web đơn giản: src/ |--

Khi bắt đầu một dự án xây dựng web, một trong những công việc đầu tiên là tạo cấu trúc thư mục(code structure) cho trang web và commit cấu trúc thư mục này lên repo.

Ví dụ thiết kế một cấu trúc thư mục như thế này cho một trang web đơn giản:

src/
|-- assets/
    |-- images/
|-- styles/
    |-- main.css
index.html
README.md

Tuy nhiên, khi thực hiện thao tác để commit cấu trúc thư mục này thì mình chỉ thấy có file index.html và file src/styles/main.css thay đổi để commit mà thôi!

Điều này cũng có nghĩa là khi code push lên repo của mình thì sẽ không có cấu trúc như mình mong muốn!

Vậy làm thế nào để có thể commit các thư mục trống không chứ file như assets , assets/images lên git?

Câu này mình nghĩ là khá đơn giản, bạn có thể lên google và search “How to keep empty folder on git” là sẽ có ngay câu trả lời.

Đó là dùng file .gitkeep đặt vào trong thư mục trống đó.

Thế là đã có thể commit lên được rồi. Và đây là kết quả.

Như tại sao lại là file .gitkeep nhỉ? Liệu có thể là file khác được không?

Câu trả lời là !

Bạn có thể đặt bất cứ file nào, text.txt hay thậm chí là .gitignore.

Tuy nhiên vì mục đích của file này là giữ cho một thư mục có thể trống, theo nghĩa đen của nó, nên theo cách làm tiêu chuẩn sẽ là một file có đủ ý nghĩa trên:

  • .gitkeep là file ẩn

  • .gitkeep mang ý nghĩa đúng với vai trò của nó


Hi vọng bạn sẽ nhớ đến .gitkeep khi cần commit thư mục trống và hiểu thêm vì sao lại dùng bạn ấy nhé. Cơ mà nói chứ bạn sẽ ít xài lắm, vì thư mục có khi nào trống đâu haha.

Bài này mình đăng lại từ blog cá nhân, mời bạn ghé chơi nhé.

Happy Coding!

BeautyOnCode.

Nguồn: viblo.asia

Bài viết liên quan

WebP là gì? Hướng dẫn cách để chuyển hình ảnh jpg, png qua webp

WebP là gì? WebP là một định dạng ảnh hiện đại, được phát triển bởi Google

Điểm khác biệt giữa IPv4 và IPv6 là gì?

IPv4 và IPv6 là hai phiên bản của hệ thống địa chỉ Giao thức Internet (IP). IP l

Check nameservers của tên miền xem website trỏ đúng chưa

Tìm hiểu cách check nameservers của tên miền để xác định tên miền đó đang dùn

Mình đang dùng Google Domains để check tên miền hàng ngày

Từ khi thông báo dịch vụ Google Domains bỏ mác Beta, mình mới để ý và bắt đầ