Tổng quan về Git
16397

Git là gì?

Git là một hệ thống quản lý phiên bản phân tán (Distributed Version Control System - DVCS) được phát triển bởi Linus Torvalds vào năm 2005. Nó được sử dụng rộng rãi trong phát triển phần mềm để theo dõi các thay đổi trong mã nguồn.

Các khái niệm cơ bản của Git

  1. Repository (Kho chứa): Nơi lưu trữ toàn bộ lịch sử và metadata của dự án.
  2. Commit: Một snapshot của các thay đổi tại một thời điểm cụ thể.
  3. Branch (Nhánh): Một phiên bản độc lập của repository.
  4. Merge: Kết hợp các thay đổi từ các branch khác nhau.
  5. Remote: Phiên bản của repository được lưu trữ trên server.
  6. Clone: Tạo một bản sao local của repository từ remote.
  7. Pull: Lấy và merge các thay đổi từ remote vào local repository.
  8. Push: Đẩy các thay đổi local lên remote repository.

Cấu trúc thư mục .git

Thư mục .git chứa tất cả thông tin cần thiết cho repository của bạn và lịch sử của nó. Dưới đây là cấu trúc và giải thích về các thành phần chính:

.git/
├── HEAD
├── config
├── description
├── hooks/
├── info/
├── objects/
├── refs/

HEAD

File này chứa tham chiếu đến branch hiện tại. Thông thường, nó chứa một tham chiếu như:

ref: refs/heads/main

config

File này chứa cấu hình cụ thể cho repository, bao gồm thông tin về remote repositories, branch tracking, và các cài đặt Git khác.

description

File này được sử dụng bởi GitWeb và thường không được sử dụng.

hooks/

Thư mục này chứa các script hook có thể được kích hoạt tự động khi các sự kiện Git nhất định xảy ra.

info/

Thư mục này chứa file exclude, cho phép bạn chỉ định các file mà Git nên bỏ qua mà không cần thêm chúng vào file .gitignore.

objects/

Đây là nơi Git lưu trữ nội dung của tất cả các file, commit, và tree. Các object được lưu trữ dưới dạng nén và được đặt tên bằng hash SHA-1.

  • blob: Đại diện cho nội dung của một file.
  • tree: Đại diện cho một thư mục, chứa tham chiếu đến các blob và tree khác.
  • commit: Đại diện cho một snapshot cụ thể của repository.

refs/

Thư mục này chứa các tham chiếu đến các commit object. Nó bao gồm:

  • heads/: Chứa các local branch.
  • remotes/: Chứa các remote branch.
  • tags/: Chứa các tag.

Các lệnh Git cơ bản

  1. git init: Khởi tạo một repository mới.
  2. git clone <url>: Tạo bản sao của một remote repository.
  3. git add <file>: Thêm file vào staging area.
  4. git commit -m "message": Tạo một commit mới.
  5. git status: Kiểm tra trạng thái của working directory.
  6. git log: Xem lịch sử commit.
  7. git branch: Liệt kê, tạo hoặc xóa các branch.
  8. git checkout: Chuyển đổi giữa các branch hoặc commit.
  9. git merge: Kết hợp các branch.
  10. git pull: Lấy và merge các thay đổi từ remote.
  11. git push: Đẩy các thay đổi lên remote.

Git là một công cụ mạnh mẽ với nhiều tính năng phức tạp hơn, nhưng những điều trên đã bao gồm các khái niệm và lệnh cơ bản nhất. Khi bạn làm quen với những điều này, bạn có thể tìm hiểu thêm về các tính năng nâng cao như rebasing, cherry-picking, và quản lý submodules.

Danh mục


  1. Khác
  2. ThreeJS
  3. Ubuntu/Linux
  4. HTML/CSS
  5. Git
  6. Amazon Web Services
  7. Javascript
  8. Docker
  9. Laravel

Bài viết liên quan


Khái niệm Repository trong Git

Khái niệm Repository trong Git

27.09.2024
Author: ADMIN
Git repository là một khái niệm cốt lõi của git. Bài viết này sẽ giúp bạn hiểu rõ hơn về Git repository, từ khái niệm cơ bản đến cách hoạt động. Cùng với đó là các ví dụ thực tế giúp bạn có thể áp dụng ngay vào trong công việc.
Ví dụ về Merge và Rebase

Ví dụ về Merge và Rebase

27.09.2024
Author: ADMIN
Khám phá các kỹ thuật merge và rebase nâng cao trong Git với 10 ví dụ thực tế. Hướng dẫn chi tiết cách xử lý conflicts, rebase tương tác, cherry-pick, squash, subtree và các chiến lược merge tùy chỉnh. Nâng cao kỹ năng Git của bạn.
Tạo một bản sao của một branch

Tạo một bản sao của một branch

27.09.2024
Author: ADMIN
Git là một hệ thống quản lý phiên bản được sử dụng phổ biến. Bài viết này sẽ hướng dẫn các bạn từng bước để tạo một branch backup từ branch develop. Cùng với đó là giải thích chi tiết các lệnh được sử dụng. Giúp cho việc làm việc nhóm trở nên hiệu quả hơn

Bài viết khác

Routing

Routing

01.08.2024
Author: ADMIN
Hướng dẫn chi tiết về Basic Routing trong Laravel, từ cách định nghĩa route, sử dụng middleware, route caching đến route naming giúp tối ưu hóa ứng dụng.
Blade Basics

Blade Basics

01.08.2024
Author: ADMIN
Khám phá Blade trong Laravel: từ if-else, loops, kế thừa layout đến include sub-views. Giúp code gọn gàng, dễ quản lý và bảo trì hơn!
9 Mẹo Hữu Ích Khi Sử Dụng Blade Trong Laravel

9 Mẹo Hữu Ích Khi Sử Dụng Blade Trong Laravel

01.08.2024
Author: ADMIN
Khám phá 9 mẹo Blade giúp bạn viết code Laravel sạch, tối ưu và chuyên nghiệp hơn. Từ @forelse, @auth, @guest, đến format ngày, tối ưu SEO – tất cả trong một bài viết súc tích, dễ áp dụng!
Hiển thị giá trị trong Blade

Hiển thị giá trị trong Blade

01.08.2024
Author: ADMIN
Hướng dẫn hiển thị biến trong Laravel Blade: escape HTML tự động, hiển thị dữ liệu thô, giá trị mặc định và cách truy xuất mảng, đối tượng. Giúp bạn tối ưu hiển thị dữ liệu một cách an toàn!