Git là gì?

Mục lục
Git là gì?
- Phần mềm quản lý nguồn phân tán
- Được phát triển bởi Linus Torvalds vào năm 2005
- Ban đầu dành cho việc phát triển nhân Linux. Hiện nay, Git trở thành một trong các phần mềm quản lý mã nguồn phổ biến nhất. Git là phần mềm mã nguồn mở được phân phối theo giấy phép công cộng GPL2
- Có khả năng chạy trên nhiều hệ điều hành khác nhau: Linux, Windows, MacOS, …
Các khái niệm cơ bản trong git
Repository (kho lưu trữ)
Repository – kho lưu trữ: là nơi lưu trữ tất cả những thông tin cần thiết để duy trì và quản lý các sửa đổi và lịch sử của dự án.
Có hai loại repository:
- Local Repository: là repository được cài đặt trên máy tính của lập trình viên, repository này sẽ đồng bộ hóa với remote repository bằng các lệnh của git.
- Remote Repository: là repository được cài đặt trên server chuyên dụng. Ví dụ: GitHub, GitLab,…

Lệnh tạo repository
- Bước 1: Đến thư mục chứa dự án
- Bước 2: Sử dụng lệnh git init để tự động tạo repository
git init
Ví dụ:

Sau khi gõ lệnh git init, nếu bạn nhận được thông báo như trên thì việc thực hiện repository đã thành công
Branch (nhánh)

Dùng để phân nhánh và ghi lại luồng của lịch sử
Mỗi repository có thể tạo nhiều nhánh khác nhau, và chúng độc lập với nhau nên khi bạn thực hiện các thao tác thêm xóa, cập nhật với project trên nhánh này sẽ không ảnh hưởng đến các nhánh khác
Branch mặc định là master
Có hai loại branch:
Local branch: nhánh nằm trên máy tính của bạn
Remote branch: nhánh nằm trên máy chủ từ xa
Các câu lệnh thường sử dụng trong Git
Git commit
Là thao tác để lưu lại trạng thái hiện tại trên hệ thống, ghi nhận lại lịch sử các xử lý: thêm, xóa, cập nhật các file hay thư mục trên repository
Khi thực hiện, repository sẽ ghi lại sự khác biệt giữa lần commit trước so với hiện tại. Chúng được ghi nối tiếp nhau theo thứ tự thời gian. Do đó, bạn có thể xem lại lịch sử thay đổi trong quá khứ dựa theo các commit trước đó

Git clone

Sao chép một repository có sẵn trên máy cục bộ
git clone /đường-dẫn-đến/repository/
Nếu repository nằm ở máy chủ khác thì bạn dùng lệnh sau:
git clone tênusername@địachỉmáychủ:/đường-dẫn-đến/repository
Git rebase
Để áp dụng lại những commit mới trong một nhánh trên đỉnh của một nhánh khác

Git push
Được sử dụng để đưa nội dung kho lưu trữ cục bộ lên server.

Git pull
Lấy toàn bộ dữ liệu từ repository trên server gộp vào branch hiện tại bạn đang làm việc
