Bảng tra nhanh lệnh Git
Git có khoảng 150 lệnh con, và vài lệnh trong số đó giống nhau đến mức nguy hiểm, reset với restore, checkout với switch, rm với restore --staged. Bảng tra này nhóm những lệnh bạn thực sự gõ theo tình huống: quy trình hằng ngày, làm việc với nhánh, hoàn tác lỗi và stash. Chọn nhóm rồi sao chép cả khối.
Cách dùng bảng tra
-
1
Chọn một chủ đề
Hằng ngày, nhánh, hoàn tác hay stash, mỗi nhóm ứng với một lối tư duy khác nhau.
-
2
Lướt qua khối lệnh
Mỗi dòng là một lệnh hoàn chỉnh, chạy được ngay; không có ký hiệu chỗ trống trong ngoặc nhọn trừ khi được đánh dấu rõ ràng.
-
3
Sao chép lệnh bạn cần
Dán vào terminal, chỉnh tên nhánh hoặc SHA của commit, rồi chạy.
Vì sao các lệnh vẫn khiến người dùng lâu năm bối rối
Lớp “porcelain” của Git lớn dần lên theo kiểu chắp vá. checkout bị gán chồng cả hai việc “chuyển nhánh” và “khôi phục tệp”; còn reset nằm đâu đó giữa “bỏ phần việc đang làm” và “dời con trỏ nhánh”. Từ Git 2.23 trở đi đã có những động từ rõ nghĩa hơn:
| Cũ | Mới (rõ ràng hơn) |
|---|---|
git checkout branch |
git switch branch |
git checkout -b new |
git switch -c new |
git checkout -- file |
git restore file |
git checkout --staged file |
git restore --staged file |
Nấc thang hoàn tác an toàn
- Khôi phục một tệp:
git restore path/to/file(chưa staged) hoặcgit restore --staged path/to/file(đã staged nhưng chưa commit). - Hoàn tác commit cuối cùng nhưng giữ lại các thay đổi:
git reset --soft HEAD~1. - Hoàn tác commit cuối cùng và bỏ các thay đổi:
git reset --hard HEAD~1(có tính phá hủy; hãy kiểm tra chắc chắn không còn phần việc nào chưa commit). - Hoàn tác một commit đã chia sẻ:
git revert <sha>, tạo một commit mới để triệt tiêu commit cũ; an toàn với lịch sử đã được push.
Phép lịch sự khi dùng stash
- Luôn stash kèm một thông điệp:
git stash push -m "wip: đang nối API". - Xem danh sách stash bằng
git stash listtrước khi pop, các stash không tên chồng chất rất nhanh. git stash popáp dụng rồi xóa;git stash applyáp dụng rồi vẫn giữ lại.
Khôi phục
Mất một commit sau khi hard reset? Nhiều khả năng nó vẫn còn trong reflog. Chạy git reflog để xem mọi lần HEAD di chuyển trong 90 ngày qua, rồi git reset --hard <sha> để quay về trạng thái tốt.
Câu hỏi thường gặp
Từ phiên bản Git 2.23 (tháng 8 năm 2019), dự án đã chia lệnh checkout bị quá tải thành hai lệnh riêng biệt: switch dùng để thay đổi nhánh và restore dùng để sửa đổi tệp tin. Cả hai lệnh vẫn tồn tại nhằm đảm bảo tính tương thích ngược, nhưng dễ đọc hơn khi xem lại lịch sử sử dụng shell.
reset di chuyển con trỏ nhánh (và tùy chọn là cây làm việc). revert tạo một lệnh commit mới nhằm hủy bỏ lệnh commit trước đó – an toàn khi thực hiện trên nhánh chia sẻ. checkout/restore thay đổi các tệp trong cây làm việc mà không ghi lại lịch sử thay đổi.
Hãy sử dụng git revert <sha> để thêm lệnh commit bù trừ và thực hiện push. Tránh sử dụng tổ hợp git reset --hard + git push --force trên các nhánh chia sẻ, trừ khi đội ngũ đã đồng ý rõ ràng.
Các lệnh là văn bản tĩnh được hiển thị trên trang. Chủ đề bạn chọn chỉ được gửi đến máy chủ để hiển thị các lệnh tương ứng và được mang theo trong liên kết trang khi bạn di chuyển giữa hai bước. Chủ đề này không được lưu trữ hay ghi nhật ký.
Công cụ liên quan
Bảng tham chiếu ASCII
Bảng ASCII đầy đủ từ 0 đến 127 với giá trị thập phân, thập lục phân, bát phân, nhị phân và ký hiệu tham chiếu ký tự số HTML, gồm NUL, LF và DEL.
Tham chiếu ký tự HTML
Danh sách có thể tìm kiếm các thực thể HTML, mã tên và mã số tương ứng của chúng, cùng chức năng sao chép chỉ với một cú nhấp cho các ký tự đặc biệt và biểu tượng.
Bảng tham khảo phím tắt
Tìm phím tắt mặc định theo tài liệu của VS Code, Chrome và Bash dùng GNU Readline trên macOS, Windows và Linux.
Trình xem hex của tệp nhị phân
Chọn một tệp và kiểm tra phần dữ liệu giới hạn từ bất kỳ offset byte hợp lệ nào dưới dạng hex dump cục bộ với cột offset, hex và ASCII.
Bảng tra cứu nhanh Markdown
Tài liệu Markdown thực dụng với bản xem trước thực tế và ví dụ có thể sao chép cho tiêu đề, danh sách, bảng, mã, liên kết, hình ảnh và cú pháp GFM.
Công cụ xác thực số điện thoại
Kiểm tra cấu trúc số theo quốc gia và xem khu vực, loại số cùng các định dạng E.164, quốc tế, quốc gia và RFC 3966.
Công cụ này có phiên bản bằng các ngôn ngữ khác
- Git-Befehlsübersicht [DE]
- Folha de Dicas de Comandos Git [PT]
- ورقة مرجعية لأوامر Git [AR]
- Git 명령어 치트시트 [KO]
- Lembar Contekan Perintah Git [ID]
- คู่มือคำสั่ง Git สำหรับการใช้งานอย่างรวดเร็วและสะดวก [TH]
- Feuille de triche des commandes Git [FR]
- Ściąga z poleceń Git [PL]
- Hoja de trucos de comandos de Git [ES]
- Git-commando's spiekbriefje [NL]
- Gitコマンドチートシート [JA]
- Git-kommandon fusklapp [SV]
- Git Komutları Kopya Kağıdı [TR]
- Git命令速查表 [ZH]
- Git Command Cheatsheet [EN]
- Promemoria dei comandi Git [IT]
- Шпаргалка по командам Git [RU]