YouMind
Đăng nhập

Giải thích Git bằng sơ đồ: Hướng dẫn dành cho học sinh trung học phổ thông

@dan_pro_man
TIẾNG NHẬT10 thg 10, 2026
106K
205
23
0
674

TL;DR

Hướng dẫn thân thiện với người mới, giải thích quy trình làm việc cốt lõi trên GitHub, bao gồm tạo kho lưu trữ (repository), gửi yêu cầu kéo (pull request), xem xét sự khác biệt (diff) và hoàn tác thay đổi, được thiết kế riêng cho người dùng đang tận dụng các trợ lý lập trình AI.

Bạn đang dùng GitHub mà không thực sự hiểu mình làm gì?

Dùng mù quáng thì sớm muộn cũng hỏng.

Trên GitHub chỉ có đúng ba nút màu xanh lá.

Và chỉ có một chỗ duy nhất cần nhìn trước khi bấm chúng.

Bài viết này sẽ chỉ ra mọi vị trí cần nhìn và cần bấm trên màn hình GitHub, được khoanh đỏ rõ ràng.

Kết nối, gửi, kiểm tra diff, merge và revert.

Chúng ta sẽ đi hết chu trình này qua 10 ảnh chụp màn hình thực tế.

AI lo phần gõ lệnh.

Bạn lo phần nhìn và bấm.

Gặp thuật ngữ khó, tôi sẽ giải thích thật đơn giản ngay lúc đó.

※ Giao diện và thông số GitHub trong bài được kiểm chứng tính đến tháng 10 năm 2026. Giao diện có thể thay đổi theo thời gian.

Chương 1: Kết nối với GitHub | Tạo Repository và tải bản ghi local lên

Giao diện GitHub toàn tiếng Anh.

Nhưng các vị trí cần bấm thì luôn cố định.

Những ô màu đỏ trên màn hình sẽ cho bạn biết cần nhìn đâu và bấm đâu.

Trong chương này, bạn chỉ cần bấm đúng một nút màu xanh lá.

Đầu tiên, hãy tạo một repository.

Repository giống như một chiếc tủ khóa để bạn lưu trữ các bản ghi Git trên mạng.

Tôi đã viết về những thứ bên trong chiếc tủ này cùng bốn thuật ngữ quan trọng ở bài trước.

【Có hình minh họa】Giải thích Git cho học sinh cấp hai

https://x.com/dan_pro_man/status/2107224533099069671?s=20

Ngay cả khi chưa đọc bài đó, bạn vẫn có thể hoàn thành trọn vẹn chu trình chỉ với bài viết này.

Đăng nhập vào GitHub, chọn "New repository" từ biểu tượng "+" ở góc phải trên cùng.

Hoặc mở https://github.com/new để vào thẳng màn hình đó.

だん|AI×クラウドエンジニア - inline image

Bạn chỉ cần điền mỗi tên.

Nhập tên gồm chữ và số vào ô "Repository name".

Đặt là "git-practice" cũng được.

Chọn "Private" ở mục "Choose visibility".

Nghĩa là không công khai.

Tạm thời tắt công tắc "Add README".

Nếu bạn đã có sẵn bản ghi local, tạo một repository trống sẽ giúp việc kết nối dễ dàng hơn nhiều.

Bấm nút xanh lá "Create repository" ở dưới cùng.

Màn hình hiện ra ngay sau khi bấm chính là phần quan trọng nhất của chương này.

だん|AI×クラウドエンジニア - inline image

Gần phía dưới có dòng tiêu đề: "…or push an existing repository from the command line".

Ba dòng lệnh bên dưới chính là những gì chúng ta sẽ dùng hôm nay.

Bảy dòng bên trên dành cho ai chưa có bản ghi local, nên bạn cứ bỏ qua.

Ý nghĩa của ba dòng lệnh đó như sau:

Dòng 1: Báo cho bản ghi local biết địa chỉ của chiếc tủ này.

Dòng 2: Đồng bộ tên nhánh chính thành "main".

Dòng 3: Cất nhánh main vào tủ.

Copy địa chỉ (ô màu đỏ) trên màn hình này rồi gửi cho AI bằng một dòng duy nhất.

text
1Tải các bản ghi trong thư mục này lên https://github.com/account-name/git-practice

Claude Code sẽ tự gõ ba dòng lệnh đó.

Claude Code là một AI thực thi tác vụ trên máy tính của bạn dựa theo chỉ dẫn.

Trong tài liệu hướng dẫn của mình, tôi yêu cầu phải xác nhận trước khi push.

Push là thao tác đưa các bản ghi local cất vào tủ.

Nên nó sẽ dừng lại ở đây một nhịp.

Trả lời "Yes", sau đó tải lại trang trên trình duyệt.

だん|AI×クラウドエンジニア - inline image

Chỗ ban nãy là ba dòng lệnh giờ đã hiện ra danh sách file local của bạn xếp ngay ngắn. Bên cạnh là commit message.

Đó là dấu hiệu cho thấy bạn đã "kết nối" thành công.

Có một điều tôi muốn bạn để ý.

Dòng chữ "main" nằm phía trên danh sách file.

Nó cho biết bạn đang xem đánh dấu trang nào bên trong tủ.

Đánh dấu trang chính là branch.

Nó đánh dấu cột mà bạn đang xếp bản ghi vào.

Từ giờ trở đi, đừng đụng trực tiếp vào "main" này nữa.

Lúc đầu, tôi cũng chẳng để tâm chuyện này.

Tôi làm việc thẳng trên main rồi mất cả buổi loay hoay tìm đường quay lại.

Khi kết nối thất bại, nguyên nhân thường nằm ở địa chỉ.

Thiếu đuôi ".git".

Sai chính tả tên tài khoản.

Nếu thấy báo "not found", hãy copy lại địa chỉ từ Ảnh ②.

Đến đây, các bản ghi local của bạn đã kết nối với GitHub. Tiếp theo là chu trình merge hàng ngày qua Pull Request.

**

Chương 2: Merge qua Pull Request | Gửi việc AI làm, kiểm tra diff rồi mới bấm

Từ đây bắt đầu chu trình hàng ngày.

Pull Request là một phiếu gửi kèm lời nhắn "Hãy merge cái này giúp tôi".

Trong chương này, bạn sẽ bấm ba nút màu xanh lá.

AI lo phần gõ lệnh.

Việc của bạn chỉ là nhìn và bấm.

だん|AI×クラウドエンジニア - inline image

Đầu tiên, gửi cho AI một dòng.

text
1Tạo branch mới, thêm 3 dòng hướng dẫn sử dụng vào README, commit rồi tải lên GitHub

README là file đầu tiên nơi bạn viết mô tả cho repository.

Claude Code sẽ tạo branch.

Nó sửa file và commit.

Cuối cùng, nó dừng lại trước khi push và hỏi bạn.

Trả lời "Yes", rồi mở chiếc tủ trên trình duyệt.

だん|AI×クラウドエンジニア - inline image

Một dải màu vàng xuất hiện trên cùng.

Nó thông báo: "Tôi vừa cất branch này vào".

Bấm nút xanh lá "Compare & pull request" bên phải.

Đây chính là bước 'Gửi'.

Giống như nộp cuốn vở nháp cho giáo viên vậy.

Chỉ gửi thôi thì chưa có gì được chép vào bản chính thức cả.

Việc sao chép chỉ diễn ra sau khi đã xem xét.

だん|AI×クラウドエンジニア - inline image

Trên màn hình gửi có ba chỗ cần nhìn.

Thứ nhất: Mũi tên trên cùng.

"base: main" và "compare: work-branch"

Dòng này cho biết merge từ đâu vào đâu.

Chỉ cần xác nhận phía bên trái là main.

Thứ hai: Tiêu đề trong ô "Add a title".

Nếu AI tự tạo, nó sẽ kèm theo tóm tắt các thay đổi.

Nếu bạn gửi thủ công, commit message sẽ được điền sẵn.

Khi gửi thủ công, hãy viết "đã làm gì" trong một dòng.

Thứ ba: Nút xanh lá "Create pull request".

Bấm vào là chấp nhận phiếu gửi.

Sau khi gửi, con người phải vào cuộc.

Bốn tab sẽ hiện ra ở đầu màn hình.

Chỉ cần nhìn tab ngoài cùng bên phải: "Files changed".

Nghĩa là các file đã thay đổi.

だん|AI×クラウドエンジニア - inline image

Dòng màu xanh lá là dòng được thêm vào.

Dòng màu đỏ là dòng bị xóa đi.

Đó gọi là diff.

Nếu 3 dòng bạn yêu cầu đều màu xanh lá, tức là đạt.

Trong ảnh ví dụ, tiêu đề và dòng trống cũng được thêm vào nên thành 6 dòng xanh lá.

Nếu có dòng đỏ nào bạn không hề yêu cầu, đừng merge.

Trong ảnh ví dụ có 1 dòng đỏ.

Một dòng ghi chú đã biến mất khỏi mục "Items placed".

Nếu bạn không yêu cầu xóa, hãy dừng lại ở đây.

Hỏi AI: "Tại sao bạn xóa dòng đỏ này?"

Đây là 30 giây mang tính sống còn khi giao việc cho AI.

Hồi xưa, chỉ cần thấy thông báo review là bụng đã cồn cào, tôi hay nhắm mắt bấm bừa mà không kiểm tra chỗ này.

Giờ thì tôi đếm số dòng đỏ trước.

Chỉ cần một dòng đỏ không mong muốn, tôi dừng ngay.

Nếu diff không có vấn đề gì, hãy quay lại tab "Conversation".

Gần phía dưới có nút xanh lá "Merge pull request".

Nếu phía trên hiện dòng "No conflicts with base branch", bạn có thể merge luôn.

だん|AI×クラウドエンジニア - inline image

Bấm vào, nút sẽ chuyển thành "Confirm merge".

Bấm thêm lần nữa.

Vậy là các bản ghi của work-branch đã được merge vào main.

だん|AI×クラウドエンジニア - inline image

Màu chuyển sang tím và hiện chữ "Merged".

Phía dưới xuất hiện ô thông báo "Pull request successfully merged and closed".

Bên phải là nút "Delete branch".

Cứ thoải mái bấm.

Chỉ có "đánh dấu trang" của work-branch trong tủ biến mất thôi.

Vì bản ghi đã merge vào main rồi nên không mất mát gì cả.

Cuối cùng, cập nhật lại môi trường local.

Gửi AI: "Chuyển sang main và lấy bản mới nhất từ GitHub về".

Thế là xong một chu trình.

Tác vụ tiếp theo hãy bắt đầu từ một branch mới.

Đừng làm việc trực tiếp trên main.

Đến đây, bạn đã hoàn thành chu trình gửi, kiểm tra diff và merge. Phần tiếp theo nói về Revert — nút để hoàn tác sai lầm sau khi merge.

**

Chương 3: Revert | Hoàn tác lỗi sau merge chỉ bằng một nút

Đôi khi merge xong bạn mới phát hiện ra lỗi.

Trong Git, bạn "hoàn tác" các bản ghi đã lưu mà không cần xóa chúng.

Trên giao diện GitHub có sẵn một nút cho việc này.

Nó tên là "Revert".

Mở lại Pull Request bạn vừa merge.

Sẽ có dòng chữ "merged commit … into main".

Ngoài cùng bên phải dòng đó là nút "Revert".

だん|AI×クラウドエンジニア - inline image

Chuyện gì xảy ra khi bạn bấm vào?

Bản ghi không bị xóa.

Một Pull Request mới với các thay đổi ngược lại sẽ được tạo ra.

Theo tài liệu chính thức, việc hoàn tác chỉ thực sự diễn ra khi bạn merge Pull Request mới này.

Nên revert cũng tuân theo đúng chu trình ở Chương 2.

Kiểm tra diff, rồi bấm nút xanh lá.

Thay vì xóa đi, một bản ghi "đã hoàn tác" sẽ được thêm vào.

Nếu nhờ AI làm, hãy nói: "Hoàn tác Pull Request tôi vừa merge".

Claude Code cũng làm y hệt bằng lệnh git revert.

Còn một màn hình nữa bạn có thể gặp.

だん|AI×クラウドエンジニア - inline image

"This branch has conflicts that must be resolved".

Đây là xung đột (conflict).

Xảy ra khi cùng một dòng bị sửa khác nhau giữa main và work-branch.

Nút xanh lá chuyển sang xám, không bấm được.

Đừng cố sửa trên giao diện; hãy gửi AI một dòng.

text
1Lấy main về và cho tôi xem cả hai phiên bản của phần bị xung đột

Bạn là người quyết định giữ lại bản nào.

Khi AI sửa xong và tải lên lại, nút xanh lá sẽ sáng trở lại.

Xung đột không phải là thất bại.

Nó chỉ phơi bày sự thật rằng cùng một dòng đã bị chỉnh sửa hai lần.

Cuối cùng, có một thứ không bao giờ hiện trên màn hình.

Key.

Các file chứa mật khẩu hoặc API key tuyệt đối không được tải lên GitHub.

Dù bạn có Revert, một khi key đã tải lên thì coi như đã lộ và phải tạo lại key mới.

Trước khi tải lên, hãy dặn AI: "Loại .env ra khỏi các bản ghi".

Ở chỗ làm của tôi, tôi viết cấu hình AWS trong file text và cũng áp dụng đúng chu trình này.

Cấu hình được merge mà không kiểm tra diff sẽ chạy thẳng trên production.

Do đó, tôi không giao 30 giây quan trọng trước khi bấm nút đó cho AI.

Con người phải tự bấm mọi nút trên màn hình.

Dù tôi có mở rộng phạm vi việc giao cho AI đến đâu, nguyên tắc này vẫn không đổi.

Đến đây, toàn bộ chu trình kết nối, gửi, merge và revert đã hoàn tất.

Cuối cùng, tôi tặng bạn bộ tài liệu dùng ngay.

Tôi đã viết chi tiết từng bước để hoàn thành một chu trình trên giao diện GitHub.

Toàn bộ ảnh chụp và prompt trong bài được đóng gói thành định dạng dùng ngay.

  • Poster dịch giao diện GitHub (9 màn hình, 69 thuật ngữ)
  • Bản đồ xử lý sự cố khi AI làm hỏng (6 tình huống)
  • 7 Prompt cho trọn một chu trình
  • Bảng checklist trước khi merge (8 mục)

Tất cả được gom chung trong một booklet PDF 15 trang.

Chỉ cần bấy nhiêu, bạn đã có thể bắt tay vào hoàn thành chu trình ngay hôm nay.

Để nhận tài liệu, bạn chỉ cần tham gia Open Chat bên dưới.

Làm theo hướng dẫn sau khi vào nhóm và gửi chữ "Submit", tài liệu sẽ tự động gửi đến.

https://line.me/ti/g2/pEpZQdEyn1BM5Zi2wqLBT2rZYpC0ZaOncIWTag

だん|AI×クラウドエンジニア - inline image

Tóm lại: Hôm nay chỉ cần hoàn thành đúng một chu trình

Đừng đưa thẳng việc AI làm vào main.

Hãy gửi từ work-branch, kiểm tra diff rồi mới bấm các nút xanh lá.

Trong một chu trình có ba nút xanh lá cần bấm.

Ngày đầu tiên tự tay bấm Revert, tôi mới vỡ lẽ ra rằng bản ghi không hề bị xóa.

Kể từ đó, tôi không còn sợ vọc vạch nữa.

Bạn không cần làm mọi thứ cùng lúc.

Hôm nay, chỉ có một việc duy nhất cần làm.

Mở repository đã tạo ở Chương 1 và gửi AI một dòng.

Tạo branch mới, thêm 1 dòng vào README rồi tải lên GitHub

Khi dải màu vàng xuất hiện, bấm nút xanh lá và mở tab "Files changed".

Nếu chỉ có một dòng xanh lá, tức là đạt.

Hãy tự mắt nhìn dòng đó trước khi merge.

Đó là bước đầu tiên để mở rộng phạm vi việc bạn có thể giao cho AI.

Với kỹ sư ngoài 30, chiến thắng không nằm ở khối lượng công việc, mà ở cách thiết kế luồng việc.

Thay vì học lại công cụ mỗi lần chúng cập nhật, việc xác định rõ điểm dừng sẽ nhanh hơn nhiều.

AWS và AI tiến hóa cực nhanh.

Đọc log từ những người đang thử nghiệm trong công việc thực tế sẽ nhanh hơn việc tự mày mò một mình.

Trong hành trình thực chiến AI × Engineering của mình, tôi lưu lại cả những bản ghi thành công lẫn những lần hỏng hóc và loại bỏ.

Hãy follow tôi để không bỏ lỡ những chia sẻ sắp tới nhé! @dan_pro_man

Lưu một chạm

Đọc sâu bài viết viral bằng AI trong YouMind

Lưu nguồn, đặt câu hỏi tập trung, tóm tắt lập luận và biến một bài viết viral thành các ghi chú có thể tái sử dụng trong một không gian làm việc AI duy nhất.

Khám phá YouMind
Dành cho nhà sáng tạo

Biến Markdown của bạn thành bài viết 𝕏 gọn gàng

Khi bạn đăng bài viết dài của riêng mình, việc định dạng hình ảnh, bảng và khối mã cho 𝕏 rất mệt mỏi. YouMind biến cả bản nháp Markdown thành một bài viết 𝕏 gọn gàng, sẵn sàng để đăng.

Thử Markdown sang 𝕏

Thêm pattern để giải mã

Bài viết viral gần đây

Khám phá thêm bài viết viral