GIT là một trong các phần mềm quản lý mã nguồn phổ biến nhất dành cho các lập trình viên. Tuy nhiên, việc ghi nhớ các câu lệnh khác nhau của GIT cũng không hề đơn giản. Vì vậy, GIT cheatsheet dưới đây sẽ chia sẻ cho bạn những câu lệnh phổ biến nhất khi thao tác với GIT để có thể dễ dàng chia sẻ, theo dõi và khôi phục code sau này.
Mục lục
Tạo kho GIT
Từ danh mục có sẵn |
cd project_dir |
d |
git add . |
Từ kho GIT khác |
git clone existing_dir new_dir |
git clone git://github.com/user/repo.git |
git clone https://github.com/user/repo.git |
Git – Thay đổi cục bộ
Đổi danh mục làm việc |
git status: Hiển thị trạng thái của thư mục làm việc và vùng dàn dựng. |
Xem sự thay đổi giữa các file |
git diff |
Thêm các tệp đã thay đổi |
git add file1 file2 file3 |
Xóa tệp |
git rm file |
git rm dir/ -r |
(recursive under directory) |
So sánh file trong staging area với local repository. |
git diff –cached |
Thay đổi commit |
git commit: Ghi lại hoặc chụp nhanh các file một cách vĩnh viễn trong lịch sử phiên bản với một tin nhắn. |
git commit -m “My message”: Commit thay đổi cùng với một thông báo tùy chỉnh: |
git commit -a -m “My Message”: |
(tracked files only, auto add) |
Sửa lại lịch sử |
git commit –amend |
Khôi phục các tệp đã thay đổi |
git checkout — file |
Khôi phục sự thay đổi (commit mới) |
git revert HEAD |
Trở lại trạng thái committe cuối cùng |
git reset –hard HEAD |
Git – Lịch sử
Hiển thị tất cả commits |
git log |
Định dạng ngắn |
git log –pretty=short |
Xem đầy đủ sự khác nhau của mỗi commit |
git log -p |
Xem file commits |
git log file |
Xem danh mục commits |
git log dir/ |
Xem lịch sử có thống kê số lượng dòng đã được thêm, xóa vào tập tin nào đó |
git log –stat |
Xem người thay đổi file |
git blame file |
Git – Merge/Rebase
Thêm các thay đổi từ nhánh này sang nhánh khác |
git merge branch |
Tách, di chuyển hoặc thoát khỏi các commit |
git rebase branch: Tách, di chuyển hoặc thoát khỏi nhánh |
git rebase master branch: Tách, di chuyển hoặc thoát khỏi nhánh chính |
Hủy bỏ rebase |
git rebase –abort |
Gộp tool để giải quyết conflicts |
git mergetool |
Conflicts lại tệp cơ sở |
git diff –base file |
Hiển thị sự thay đổi của các user khác |
git diff –theirs file |
Hiển thị sự thay đổi của bạn |
git diff –ours file |
Sau khi giải quyết conflicts |
git rebase –continue |
Git – Điều khiển Update / Publish
Hiển thị danh sách các kho lưu trữ từ xa với URLs |
git remote -v |
Hiển thị thông tin |
git remote show remote |
Thêm remote repo với tên ngắn và link |
git remote add path/url |
Cập nhật thay đổi toàn bộ nhánh trên remote repo |
git fetch remote |
Tìm và hợp nhất |
git pull remote branch |
Đẩy dự án đã commit lên remote repo và tạo nhánh <branch> nếu chưa có trên remote repo |
git push remote branch |
Xoá remote branch |
git push remote :branch |
Publish tags |
git push –tags |
Git – Branching/Tagging
Hiển thị tất cả các nhánh |
git branch |
Di chuyển tới một nhánh |
git checkout branch |
Tạo branch mới |
git branch new |
Tạo nhánh mới từ giá trị của nhánh hiện tại |
git branch new existing |
Xoá branch |
git branch -d branch |
Gắn thẻ commit hiện tại |
git tag tag-name |
>>> Xem thêm nhiều cheatsheet IT hữu ích tại đây.
Như vậy, qua cheatsheet này bạn đã biết thêm một số thao tác trên GIT để tối ưu hoá thời gian làm việc. Hy vọng bạn có thể vận dụng được chúng vào công việc của mình nhé!