Bỏ túi các command về GIT

1.Cài đặt GIT

GIT MacOS

GIT Window

GIT Linux

2.Bắt đầu với GIT

2.1 Tạo một repository mới

Để tạo 1 repository mới, bạn hãy mở cửa sổ lệnh và gõ dòng lệnh sau

git init

2.2 Sao chép (clone) một repository

Để clone 1 repository có sẵn ở trên máy cục bộ, bạn hãy sử dụng dòng lệnh sau:

git clone /đường-dẫn-đến/repository/

Nếu repository đó ở máy chủ khác thì bạn hãy gõ dòng lệnh sau:

git clone tênusername@địachỉmáychủ:/đường-dẫn-đến/repository

2.3 Quy trình làm việc của GIT

Các thành phần trong quy trình:

  • WORKSPACE: trạng thái làm việc hiện tại. Các thao tác làm thay đổi mã nguồn, thêm hoặc xoá tài nguyên, … sẽ được lưu trữ ở đây.
  • INDEX: trạng thái khi các thay đổi đã được lưu lại (bằng các lệnh add).
  • LOCAL REPOSITORY: sau khi lưu lại, thực hiện thao tác commit, đưa toàn bộ mã nguồn vào local repository. Mỗi commit sẽ có 1 tag (nhãn) riêng để có thể phục hồi lại bất cứ lúc nào.
  • REMOTE REPOSITORY: bằng thao tác push, toàn bộ mã nguồn sẽ được đưa lên remote repository và có thể chia sẻ với các thành viên khác trong nhóm thông qua Internet.

2.4 Các thao tác với GIT

Add

Bạn có thể đề xuất thay đổi (thêm nó vào chỉ mục Index) bằng cách:

git add <tên-tập-tin>
git add *

Commit

Sau khi thực hiện xong các thay đổi, đưa các thay đổi này vào Index và sau đó là Local repository. Trước khi commit, chúng ta sẽ sử dụng lệnh add để đưa tất cả vào Index.

Đây là bước đầu tiên trong quy trình git cơ bản. Để thật sự commit những thay đổi, bạn sử dụng

git commit -m "Ghi chú Commit"

Bây giờ thì tập tin đã được commit đến HEAD, nhưng chưa phải trên thư mục remote.

Push

Sau khi commit, các thay đổi sẽ được lưu trữ tại Local repository, sử dụng lệnh push để đưa toàn bộ dữ liệu lên Remote repository. Cú pháp như sau:

git push origin master

Thay đổi master bằng bất cứ nhánh nào mà bạn muốn đầy những thay đổi đến.

Nếu bạn chưa clone một repository hiện có và muốn kết nối repository của bạn đến máy chủ remote, bạn phải thêm nó với

git remote add origin <máy-chủ>

Bây giờ bạn đã có thể đẩy các thay đổi của mình vào máy chủ đã chọn

Pull
Là hành động kéo dữ liệu từ trên Remote repository về máy tính cá nhân. Có thể kéo toàn bộ dữ liệu, hoặc chỉ định một nhánh cụ thể nào đó. Cú pháp:

git pull

Fetch

Khi xảy ra lỗi, nếu muốn trở lại commit gần nhất để bắt đầu lại công việc, lệnh fetch sẽ giúp thực hiện điều đó. Cú pháp như sau:

git fetch

Config

Trong trường hợp khởi tạo một môi trường làm việc mới hoàn toàn ở máy cục bộ, khi đưa các thay đổi lên Remote repository sẽ được yêu cầu khai báo username và email. Cú pháp như sau:

git config --global user.name "Your username"
git config --global user.email "Your email"

Log

Lệnh git log cho phép xem lại lịch sử các lần commit trước.

2.5 Nhánh

Các nhánh (branches) được dùng để phát triển tính năng tách riêng ra từ những nhánh khác. Nhánh master là nhánh “mặc định” khi bạn tạo một repository. Sử dụng các nhánh khác tri đang trong giai đoạn phát triển và merge trở lại nhánh master một khi đã hoàn tất.

Tạo một nhánh mới và đặt tên là “feature_x” và chuyển qua nhánh đó (từ master) bằng cách

git checkout -b feature_x

Trở lại nhánh master

git checkout master

Xóa nhánh feature_x

git branch -d feature_x

Một nhánh không có giá trị với các nhánh khác trừ khi bạn đẩy nhánh đó đến remote repository

git push origin <nhánh>

Cập nhật & trộn (update & merge)

Để cập nhật repository cục bộ của bạn và commit mới nhất, thực thi

git pull

Trong thự mục đang làm việc để lấy về (fetch) và trộn (merge) các thay đổi ở remote. Để trộn một nhánh khác vào nhánh đang hoạt động (vd: master), sử dụng

git merge <nhánh>

Trong cả hai trường hợp, git cố gắng trộn tự động (auto-merge) các thay đổi. Không may, điều này không phải lúc nào cũng làm được và thường dẫn đến xung đột. Trách nhiệm của bạn là trộn các xung đột đó thủ công bằng cách chỉnh sửa các tập tin được hiển thị bởi git. Sau khi thay đổi, bạn phải đánh dấu chúng là đã được trộn (merged) với lệnh

git add <tên-tập-tin>

Trước khi trộn các thay đổi, bạn có thể xem trước chúng bằng các

git diff <nhánh_nguồn> <nhánh_mục_tiêu>

Thay thế các thay đổi cục bộ

Trong trường hợp bạn làm sai điều gì đó, bạn có thể thay thế các thay đổi cục bộ bằng lệnh

git checkout -- <tên-tập-tin>

Lệnh này thay thế những thay đổi trong “tree” đang làm việc với nội dung mới nhất của HEAD. Các thay đổi đã được thêm vào chỉ mục, kể cả các tập tin mới, điều này sẽ được giữ lại.

Nếu bạn muốn hủy tất cả thay đổi và commit cục bộ, lấy về (fetch) lịch sử gần đây nhất từ máy chủ và trỏ nhánh master cục bộ vào nó như sau

git fetch origin
git reset --hard origin/master

Lời kết

Vậy là qua bài viết này mình đã bỏ túi cho các bạn một vài lệnh cơ bản về GIT. Nếu bạn có chia sẻ hay đóng góp thêm về GIT hãy để lại bình luận  bên dưới nhé.Chúc các bạn thành công!

Tham khảo: How to use GIt

Bài viết liên quan

Leave a Reply

Your email address will not be published. Required fields are marked *