-->
ads here

Đừng bỏ qua 10 câu lệnh GIT này nếu bạn là developer

advertise here
Xin chào mọi người, bài viết hôm nay sẽ liên quan đến một công cụ quản lý source code vô cùng quen thuộc đối với developer hiện nay đó chính là Git.
Git là một công cụ quản lý mã nguồn (source version control) vô cùng quen thuộc và phổ biến trong giới phần mềm. Tuy nhiên, để nắm vững và trở thành master của GIT cũng cần có thời gian. Vậy nên hôm nay mình xin giới thiệu 10 câu lệnh GIT cơ bản mà mọi developer đều nên biết.
enter image description here
Lưu ý: Để hiểu rõ được bài viết này, bạn phải có kiến thức cơ bản về git

1. git init

Đây là lệnh để bạn bắt đầu tạo một git repository rỗng tại folder hiện tại. Về căn bản, khi chạy lệnh này, một thư mực .git và các thu mục con liên quan sẽ được tạo ra tai thư mục hiện tại.

$ cd path/to/your/selected/folder $ git init $ ls -a # you will see a .git folder added in your folder

2. git clone <url>

git clone cũng là một lệnh rất thông dụng để bắt đầu với git. Khác với git init là khởi tạo git repository cho thư mục hiện tại thì git clone sẽ clone 1 repository đã được tạo sẵn về thư mục của bạn. Repository này sẽ được xác định ở tham số của git clone. Ví dụ thông thường nhất bạn hay gặp là kéo về máy 1 repo sẵn trên github/bitbucket/gitlab
# git clone <git-url> $ cd path/to/your/selected/folder $ git clone https://github.com/dongtanhuy/react-redux-demo.git # new repository is cloned to your folder

3. git status

Lệnh này cho phép chúng ta nắm được những thông tin cơ bản của nhánh hiện tại như:
  • Nhánh có đang up-to-date
  • Có gì cần pull/push/ commit hay không?
  • Có file nào đã staged, unstaged hay untracked?
  • Có file mới được tạo/sửa/xóa hay không?
enter image description here

4. git add <files>

Khi chúng ta thực hiện thay đổi trong repository (thêm/xóa/sửa file) những thay đổi này chỉ được thực hiện ở local. Đế thêm những thay đổi này vào repository, chúng ta cần dùng lệnh git add
$ git add index.html # add a selected file $ git add -A # add all files changes
Note: git add không làm thay đổi repository cho tới khi ta commit

5. git commit

Có lẽ đây là lệnh được dùng nhiều nhất trong quá trình sử dụng git.
Khi chúng ta hoàn thành 1 task hoặc xử lý xong 1 issue nào đó, chúng ta cần lưu lại những gì mình đã làm. git commit có tác dụng ghi thay đổi này vào repository. Điều này giống như chúng ta tạo ra 1 checkpoint trong quá trình làm việc và có thể quay lại check point này bất cứ lúc nào.
Chúng ta cũng cần một message ngắn để mô tả hoặc giải thích những gì chúng ta commit
$ git commit -m "create login screen"
Note: git commit chỉ thay đổi repository ở local và chỉ lưu những file chúng ta đã thêm từ lệnh git add

6. git push

Sau khi commit những thay đổi, repository đã được cập nhật nhưng chỉ ở local, chúng ta cần gửi những thay đổi này lên remote server. Việc này sẽ được thực hiện bởi lệnh git push
$ git push <remote> # upload your commit to remote repository # or $ git push --set-upstream <remote> <name-of-your-branch> # use above command if your branch is newly created
Note: git push chỉ upload những gì bạn đã commit lên remote repository. Nếu bạn đang có 2 file đã thay đổi, 1 file A đã commit và file B chưa commit thì khi chạy lệnh push, chỉ có file A cập nhật lên repository

7. git pull

git pull có tác dụng cập nhật những thay đổi trên remote repository về local. Nó là sự kết hợp của 2 lệnh git fetchgit merge. Cụ thể là khi pull, chúng ta cập nhật từ remote repository (git fetch) và đồng thời apply những thay đổi mới nhất vào local (git merge)
$ git pull <remote>
Đôi khi dùng git pull có thể dẫn đến một số xung đột (conflict) trong code. Chúng ta buộc phải giải quyết (resolve) thủ công.
Trong một số trường hợp có dùng dùng git pull --rebase để giải quyết conflict

8. git rebase

git rebase dùng để apply lại những commit từ nhánh hiện tại lên một nhánh khác.
Ví dụ, tại commit C ở nhánh master, bạn tách ra 1 nhánh mới feature-1 để thực hiện feature 1. Sau khi thực hiện feature 1 xong thì có 3 commit mới là A1, B1, C1, đồng thời trong lúc đó nhánh master cũng được cập nhật từ commit D đến G
A1---B1---C1 feature-1 / A---B---C---D---E---F---G master
Khi đó, bạn cần thực hiện rebase để nhánh feature-1 của bạn có cả những cập nhật (D đến G) từ master
# on feature-1 branch $ git rebase master
Khi đó, những commit từ D đến G sẽ lần lượt và theo thứ tự được apply vào nhánh feature-1 của bạn. Trong quá trình này, có thể xảy ra conflict và bạn phải resolve bằng tay. Mỗi lần resolve conflict xong bạn chạy lệnh
$ git rebase --continue
để tiếp tục quá trình apply các commit. Bạn cũng có thể bỏ quả việc apply 1 commit nào đó trong quá trình rebase bằng
$ git rebase --skip
và có thể hủy bỏ ngay lập tức việc rebase bằng
$ git rebase --abort
Khi việc rebase kết thúc thành công, khi đó ta sẽ được kết quả như sau:
A1---B1---C1 feature-1 / A---B---C---D---E---F---G master

Lúc này, khi merge nhánh feature-1 vào master sẽ cực kì dễ dàng và bạn đã có toàn bộ những cập nhật từ khi bạn tách ra làm feature 1.

9. git branch

Lệnh git branch được dùng để chúng ta thao tác với branch như tạo mới branch, xóa branch hoặc list ra các branch hiện có
# List all branches $ git branch -l # Delete selected branch on local $ git branch -d <branch-name> # Create a new branch $ git branch <branch-name>

10. git checkout

git checkout cũng là một trong những lệnh được dùng nhiều nhất. Để làm việc với branch, chúng ta cần switch đến branch đó, vì vậy chúng ta cần dùng git checkout để chuyển qua branch cần thiết, đồng thời có thể kiểm tra files và commit.
$ git checkout <branch-name>
Để sử dụng được git checkout chúng ta cần đảm bảo 2 điều sau
  • Nhánh mà chúng ta checkout tới phải tồn tại trong repository
  • Những thay đổi trong nhánh hiện tại phải được commit hoặc stage trước khi ta switch branch
Trong trường ta vừa muốn tạo nhánh mới rồi checkout qua nhánh đó ta có thể dùng shorthand -b
$ git checkout -b <branch-name> # It will create a new branch with given name and switch to it at the same time

Kết

Qua bài viết trên mình đã giới thiệu cho cách sử dụng của 10 lệnh git cơ bản thường hay dùng trong quá trình phát triển phần mềm. Để sử dụng thành thạo git, các bạn cần có thời gian thực hành nhiều cùng như tìm hiểu thêm nhiều lệnh khác ở tài liệu chính thức của git ở phần tham khảo.
Nếu bài viết hay hãy chia sẻ cho mọi người. Nếu có ý kiến đóng góp, đừng ngần ngại để lại comment cho mình nhé.
Thanks!

Reference

Advertisement
COMMENTS ()