Bạn có đang sự dụng git để làm việc không? Hay bạn là một newbie và đang tìm hiểu về git? Bài viết này mình chia sẽ về các lệnh git mình thường dùng hằng ngày
(*)Đôi bạn cùng tiến
+ trước khi git checkout thì git status
+ trước khi git commit thì git log --oneline
(*)khi nào sử dụng commit -m và commit --amend?
git commit -m "content comment" // đối với lần commit đầu tiên
git commit --amend // đối với lần commit thứ 2 trở đi.
Vậy làm sao biết được đây phải là lần commit đầu hay ko (dùng cho não cá vàng) -> các bạn chạy lệnh git log --oneline
(*) Xem nội dung chỉnh sửa mới nhất
git diff file_name
Xem thay đổi (chưa đc add) của những file hiện tại
git diff
Xem thay đổi (đã được add, chưa commit)
git diff --cached
Xem những files thay đổi giữa hai commits
git diff --name-only COMMIT1_ID COMMIT2_ID
Xem thay đổi trước khi push
git diff --cached origin/master
Thực hành:
Step 1:
-
Thêm 1 dòng text vào file a
-
git diff a // Xem sự khác biệt
Step 2: Thực hiện tiếp tục
-
git add .
-
git commit -m "test git dif"
-
Thêm 1 line trống trong file a
-
git diff a // Xem sự khác biệt
(*) Lỗi n commit trong 1 pull request:
Thực hành thực hiện git rabse 2 commit
git rebase -i HEAD~2
// đọc và làm theo hướng dẫn 

(*) Trước khi push code lên các bạn nhớ rebase với branch develop - mới nhất nhóe
// đứng tại branch của mình
git rebase develop
- có conflict: fix conflict -> git add . -> git rebase --continue
- không có conflict
git push origin name_branch
(*) Lỡ push 1 file/folder không cần thiết lên pull request
// file
git rm --cached file_name
// folder
git rm -r --cached folder
(*) Vô tình fix comment nhầm branch (yaoming)
1. Nếu qua đầu là bờ: tức là chưa chạy lệnh git commit
thì chỉ việc git checkout sang branch bị comment
2. Lỡ phóng lao thì phải theo lao: Lỡ bấm commit thì :
git reflog
// chọn commit mà mình muốn quay trở lại
git reset id_commit
//sau đó làm theo số 1 

// Ngoài ra, các bạn có thể tìm hiểu thêm git reset
(*) reset
git log --oneline
* Second commit
* First commit
* Hello 2019
* Init commit
git reset --hard HEAD~1
* First commit
* Hello 2019
* Init commit
git reset --hard ORIG_HEAD
* Second commit
* First commit
* Hello 2019
* Init commit
Trên đây là một số lệnh git mình thường dùng, đã đủ cơ bản và bạn cần nắm vững vì bạn sẽ gặp rất nhiều khi làm việc chung với git. Tất nhiên là còn rất nhiều thứ để có thể xử lý những usecase phức tạp ha bạn phải trả giá thì mới có thể biết được hãy cùng mình từ từ tìm hiểu nhé!