Tags:

Tổng hợp 35 lệnh GIT cơ bản

Là một developer thì chắc hẳn chúng ta cần phải trang bị kiến thức sử dụng GIT để quản lý mã nguồn và làm việc nhóm. Việc sử dụng GIT thuần thục sẽ giúp chúng ta quản lý mã nguồn và làm việc nhóm hiệu quả hơn. 

Trong bài viết này, chúng ta sẽ cùng nhau tìm hiểu một số các lệnh GIT từ cơ bản, trung bình đến các lệnh GIT nâng cao.

Lệnh GIT mức độ cơ bản

Trong phần này chúng ta sẽ tìm hiểu những lệnh GIT cơ bản và được sử dụng thường xuyên nhất.

git config

Git config là câu lệnh mà chúng ta phải thực thi đầu tiên cài đặt git lên máy. Câu lệnh này sẽ giúp các bạn thiết lập tên và email cá nhân của bạn, những thông tin này sẽ đính kèm trong mọi commit của bạn, đều này sẽ rất hữu ích khi chúng ta muốn biết đoạn code nào đó đã được ai triển khai để có thể thảo luận trong trường hợp chúng ta không hiểu rõ đoạn code đấy sử dụng cho mục đích gì.

$ git config --global user.name "Your name"  

$ git config --global user.email "Your email

git version

Nhìn vào câu lệnh chắc hẵn chúng ta cũng đoán ra được câu lệnh này dùng để kiểm tra phiên bản git đang sử dụng trên máy.

 $ git version

git init

Đây là câu lệnh đầu tiên khi chúng ta bắt đầu một dự án mới, câu lệnh này sẽ giúp chúng ta tạo một repository mới, sau đó nó sẽ được sử dụng để lưu trữ và quản lý mã nguồn trong repository này.

$ git init 

// Hoặc bạn có thể đặt tên cho repo với lệnh
$ git init <your repository name>

git clone

Câu lệnh này sẽ giúp chúng ta download một repository đã tồn tại sẵn trên khô lưu trữu (github, gitlab v.v) về máy.

git clone <your project URL>

git add

Git add là câu lệnh giúp chúng ta thêm tất cả các file code mới mới hoặc các file code được chỉnh sửa vào repository.

$ git add your_file_name - Thêm một file( thêm mới hoặc chỉnh sửa) vào staging area
$ git add * - Thêm tất cả các file (thêm mới hoặc chỉnh sửa) vào staging area

git commit

Đây là câu lệnh được sử dụng phổ biến nhất, câu lệnh này sẽ giúp chúng ta lưu các thay đổi ở các file trong vùng staging area xuống repository.

Có thể hiểu git add dùng để thêm thêm các file được thay đổi hoặc thêm mới vào vùng staging area, và chúng sẽ sẵn sàng để commit và sau đó những thay đổi này sẽ được lưu xuống repository.

$ git commit -m “your useful commit message”

git status

Câu lệnh này cho phép bạn xem tình trạng hiện tại của mã nguồn như có bao nhiêu file được thêm mới hoặc chỉnh sửa.  Những file nào đang nằm trong vùng staging area hoặc đang nằm ngoài staging area.

git branch

Trong một Git repository luôn luôn tồn tại nhiều nhánh riêng biệt dùng để triển khai một tính năng nào đó độc lập với các nhánh khác.

Các lệnh branch các bạn có thể sử dụng:

$ git branch

Dùng để hiển thị tất cả các branch đang có.

 

$ git branch

Dùng để tạo một branch mới.

$ git branch -d <branch_name>

Xoá branch.

git checkout

Để di chuyển qua lại giữa các branch, chúng ta có thể sử dụng git checkout để đạt được điều này.

git checkout <branch_name>

Ngoài ra các bạn có thể vừa chuyển qua một branch mới và tiện thể khởi tạo nếu chưa tồn tại với câu lệnh.

 $ git checkout -b <your_new_branch_name>

Lệnh GIT mức độ trung bình

Sau các lệnh GIT cơ bản thường xuyên được sử dụng, chúng ta sẽ tìm hiểu các lệnh ở mức độ trung bình, cường độ sử dụng ích hơn.

git remote

Repository được các bạn khởi tạo với câu lệnh git init chỉ đang tồn tại trên máy local của các bạn. Nếu muốn lưu trữ repository này lên một dich vụ lưu trữu git từ xa nào đó chẳng hạn như gitlab, github thì các bạn cần phải sử dụng git remote để kết nối giữa chúng.

$ git remote add <shortname> <url>

Ví dụ 

$ git remote add origin https://dev.azure.com/aCompiler/_git/DemoProject

git push

Khi đã kết nối giữa local và dịch vụ lưu trữ git, chúng ta cần sử dụng lệnh git push để đồng bộ những thay đổi được commit trên local lên dich vụ lưu trữ.

$ git push -u <short_name> <your_branch_name>
Ví dụ
$ git push -u origin feature_branch

Ngoài ra trước khi sử dụng git push các bạn nên cấu hình origin và upstream.

$ git push --set-upstream <short_name> <branch_name>

Ví dụ
$ git push --set-upstream origin feature_branch

git fetch

Git được sử dụng để làm việc nhóm, quản lý mã nguồn. Ngoài những commit của bạn thì còn vô số commit khác của các thành viên khác trong team. Sử dụng git fetch sẽ giúp chúng ta cập nhật tất cả những thông tin mới như commit, branch, v.v.

$ git fetch 

git pull

Câu lệnh này sẽ download tất cả những nội dung (không chỉ là metadata như git fetch) từ dịch vụ lưu trữ xuống local repository.

$ git pull <remote_url>

git stash

Git stash cho phép chúng ta lưu trữ các file được chỉnh sửa trong vùng nhớ tạm.

$ git stash 

Nếu muốn xem tất cả các stash các bạn có thể sử dụng lệnh

$ git stash list 

Nếu bạn muốn áp dụng các chỉnh sửa trong một stash nào đó lên branch hiện tại đang sử dụng.

$ git stash apply 
or 
$ git stash pop

git log

Với câu lệnh git log các bạn có thể xem tất cả những commit trước đó được sắp xếp theo thứ tự commit gần nhất cho đến những commit cũ hơn.

$ git log 

git shortlog

Nếu chỉ muốn xem git log với nội dung được tóm tắt ngắn gọn thì các bạn có thể sử dụng git shortlog.

$ git shortlog  

git show

Lệnh này dùng để xem thông tin chi tiết của một commit bất kỳ.

$ git show <your_commit_hash>

git rm

Đôi lúc các bạn muốn xoá một file từ code base, trong trường hợp này các bạn có thể sử dụng git rm.

$ git rm <your_file_name>

git merge

Git merge cho phép các bạn kết mã nguồn và những thay đổi trên một branch khác vào branch hiện tại.

$ git merge <branch_name>

Câu lệnh này sẽ kết hợp những thay đổi trên branch có tên là <branch_name> vào branch hiện tại.

Lệnh GIT mức độ nâng cao

Những câu lệnh ở mức độ nâng cao thường ít được sử dụng, và yêu cầu các bạn phải có kiến thức đủ tốt về git trước khi sử dụng. Và hãy sử dụng chúng thật cẩn thận nhé.

git rebase

Git rebase tương tự như git merge, nó sẽ kết hợp 1 branch vào branch hiện tại với một ngoại lệ, git rebase sẽ ghi lại tất cả các lịch sử commit.

Bạn nên sử dụng lệnh Git rebase khi bạn có nhiều branch riêng dùng để hợp nhất thành một branch duy nhất. Và nó sẽ làm cho lịch sử commit trở nên tuyến tính và dễ truy vết hơn.

$ git rebase <base>

git bisect

Git bitsect giúp bạn tìm ra những bad commit.

Để bắt đầu sử dụng 
$ git bisect start
Cho git bisect biết về một commit tốt
$ git bisect good a123
Cho git bisect biết về một commit xấu
$ git bisect bad z123

git cherry-pick

Git cherry-pick là một lệnh hữu ích. Đó là một lệnhcho phép bạn chọn bất kỳ commit nào từ một branch bất kỳ và áp dụng nó vào một branch hiện tại.

$ git cherry-pick <commit-hash>

 git archive

Lệnh Git archive sẽ kết hợp nhiều tệp thành một tệp duy nhất. Nó giống như một tiện ích zip, vì vậy nó có nghĩa là bạn có thể giải nén các tệp lưu trữ để lấy các tệp riêng lẻ.

$ git archive --format zip HEAD > archive-HEAD.zip

git pull –rebase

Nếu bạn muốn download content từ dịch vụ lưu trữ và dùng rebase thay vì merge thì có thể sử dụng

$ git pull --rebase

git blame

Nếu bạn cần kiểm tra nội dung của bất kỳ tệp nào, bạn cần sử dụng git blame. Nó giúp bạn xác định ai đã thực hiện các thay đổi đối với tệp.

$ git blame <your_file_name

git tag

Trong Git, các thẻ tag rất hữu ích và bạn có thể sử dụng chúng để quản lý bản phát hành. Bạn có thể coi thẻ Git giống như một nhánh sẽ không thay đổi. Nó quan trọng hơn đáng kể nếu bạn đang phát hành công khai.

$ git tag -a v1.0.0

git verify-commit

Lệnh git verify-commit sẽ kiểm tra chữ ký gpg. GPG hoặc “GNU Privacy Guard” là công cụ được sử dụng trong các tệp ký tên và chứa các chữ ký của chúng.

$ git verify-commit <commit>

git verify-tag

Tương tự git verify commit, các bạn có thể kiểm tra trên tag với lệnh

$ git verify-tag <tag>

git diff

Nếu các bạn muốn so sánh một file code nào thay đổi những gì trước khi commit thì các bạn có thể sử dụng

$ git diff HEAD <filename>

Để kiểm tra sự khác nhau giữa mã nguồn hiện tại đã được thay đổi so với local repo

$ git diff HEAD <filename>

So sánh 2 branch

git citool

Git citool là một giải pháp thay thế đồ họa của Git commit.
$ git citool

git mv

Đổi tên git file từ tên cũ sang tên mới.s

$ git mv <old-file-name> <new-file-name>

git clean

Bạn có thể xoá sạch các nội dung được thay đổi với các untracked files (chưa được theo dõi) với lệnh git clean.

$ git clean

git help

Giúp bạn xem tất cả các thông tin cần thiết để sử dụng git.

$ git help <git_command>

git whatchanged

ệnh này thực hiện tương tự như git log nhưng ở dạng thô. Và đó là do nguyên nhân lịch sử.

$ git whatchanged

Nguồn

https://dzone.com/articles/top-35-git-commands-with-examples-and-bonus

4.2 5 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x