Menu
Giải Đáp Wiki Diễn Đàn
Trang chủ » Diễn đàn » Lập trình & Thiết kế Web » Đang làm việc nhóm mà lỡ commit nhầm nhánh, dùng cherry pick git là gì ra sao.

Đang làm việc nhóm mà lỡ commit nhầm nhánh, dùng cherry pick git là gì ra sao.

Tình hình là team em đang làm chung một cái web, ngặt nỗi lúc nãy code sung quá thế nào lại commit nhầm vào nhánh `main` của ông anh trưởng nhóm thay vì nhánh tính năng của mình. Đen thật đấy! Giờ muốn bốc cái cục commit đấy ném sang nhánh đúng mà chưa biết làm thế nào cho êm chuyện. Nghe tụi nó bảo vụ này dùng lệnh `git cherry pick` gì đó là cứu được, mà ngặt nỗi mình gà mờ Git lắm đọc tài liệu toàn chữ tây chữ tàu khó hiểu chết đi được. Bác nào rành mấy vụ này giải ngố giúp mình phát xem cái lệnh này nó là cái gì, dùng ra sao với. Lỡ tay làm hỏng việc chắc bị đuổi việc sớm quá. Anh em chỉ chi tiết giùm em với nhé.

Thảo luận (7 bình luận chính)

Avatar
Hồ Văn Hùng MEMBER Cấp 0 26/09/2026 18:24

Vụ này đợt trước mình vừa dính xong, tim đập chân phập phồng sợ ông trưởng nhóm thấy thì đó, may mà kịp cứu. Cái `cherry-pick` này hiểu đơn giản là copy y chang một cái commit từ nhánh này bốc sang gắn vào nhánh kia thôi, chứ không phải kéo hết cả đống code qua đâu mà sợ. Chủ thớt cứ bình tĩnh checkout sang nhánh của mình, gõ `git log` lấy cái mã hash của cái commit lỡ tay kia rồi chạy `git cherry-pick ` là xong phim, xong nhớ qua nhánh `main` xóa cái cũ đi là êm ru bà rù ngay.

Avatar
Nguyễn Trung Kiên MEMBER Cấp 0 26/09/2026 17:53

Bình tĩnh đi chủ thớt, chuyện này đi làm làm chung team ai chả dính dăm ba lần, quan trọng là chưa push lên remote thì dễ thở chán. `git cherry-pick` hiểu nôm na là tính năng "bốc" y nguyên một cái commit ở nhánh này rồi "dán" sang nhánh khác mà không cần lôi cả dây mơ rễ má code cũ theo. Giờ xử lý êm chuyện thế này nhé: bạn `git log` lấy cái mã hash của commit nhầm, xong switch về nhánh của mình rồi `git cherry-pick ` là xong. Quay lại nhánh `main` reset cứng nó về trước cái commit đó là đẹp trời, ông anh trưởng nhóm không kịp phát hiện ra đâu mà lo.

Avatar
Hoàng Bích Ngọc MEMBER Cấp 0 25/09/2026 02:11

Dùng ngay lệnh `git cherry-pick ` để bốc cái commit nhầm đó gắn sang nhánh tính năng của bạn, sau đó checkout về `main` rồi `git reset --hard HEAD~1` (hoặc dùng `git push origin +main` nếu đã lỡ đẩy lên remote) để xóa sạch vết tích ở nhánh trưởng nhóm là xong chuyện. Lần sau nhớ `git checkout -b` tạo nhánh riêng trước khi code nhiệt tình nhé bác.

Avatar
Võ Quốc Bảo MEMBER Cấp 0 24/09/2026 05:20

Về vụ này thì cách tối ưu nhất là chuẩn bị kỹ từ đầu. Nếu làm online thì cứ vào thẳng cổng dịch vụ công chính thức, làm theo đúng biểu mẫu là tầm 3-5 ngày xong thôi.

Avatar
Đoàn Đức Thịnh MEMBER Cấp 0 16/09/2026 13:51

Bình tĩnh đi chủ thớt, phen này chưa đến mức bị trảm đâu mà lo. Cái lệnh `git cherry pick` hiểu đơn giản là món hàng "bốc" một cái commit cụ thể ở nhánh này rồi "dán" thẳng sang nhánh kia mà không cần kéo cả đống code rườm rà sang theo. Giờ việc của bạn là nhảy sang nhánh tính năng của mình, gõ `git cherry-pick `, rồi quay lại nhánh `main` reset cứng nó về trước cái nhát chém đấy là êm ru, sếp không kịp nhận ra đâu.

Avatar
Phạm Thu Hương MEMBER Cấp 0 16/09/2026 03:25

Dùng ngay lệnh `git log` lấy cái mã hash của cục commit nhầm rồi nhảy sang nhánh của bạn gõ `git cherry-pick `, xong xuôi thì qua nhánh `main` dùng `git reset --hard` về lại trạng thái trước đó của ông anh trưởng nhóm là êm ru. Làm cách này nhanh gọn lẹ, giữ lại đúng phần code mình viết mà không sợ bị ăn mắng vì làm bẩn nhánh `main` của team. Sau nhớ cẩn thận check kỹ `git branch` trước khi commit nha bác.

Avatar
Đoàn Trung Kiên MEMBER Cấp 0 16/09/2026 03:12

Dùng lệnh `git log` để lấy mã hash của cái commit lỡ tay đẩy nhầm vào `main`, sau đó chuyển sang nhánh của bạn rồi gõ `git cherry-pick ` là xong, xong việc thì quay lại `main` reset cứng nó về trước đó là êm ru. Vụ này anh em code lâu năm ai cũng dính vài lần, cứ bình tĩnh xử lý chứ đừng hốt hoảng gõ bừa lại nát thêm cái repo của ông anh trưởng nhóm.

Vui lòng Đăng nhập hoặc Đăng ký để tham gia bình luận.