Có ai biết làm thế nào để dễ dàng hoàn tác một cuộc nổi loạn git?
Cách duy nhất nảy ra trong đầu là đi vào nó bằng tay:
- kiểm tra git cha mẹ cam kết cho cả hai chi nhánh
- sau đó tạo một nhánh tạm thời từ đó
- cherry-pick tất cả các cam kết bằng tay
- thay thế nhánh mà tôi đã khởi động lại bởi nhánh được tạo thủ công
Trong tình huống hiện tại của tôi, việc này sẽ hiệu quả vì tôi có thể dễ dàng nhận ra các cam kết từ cả hai chi nhánh (một là công cụ của tôi, bên kia là công cụ của đồng nghiệp của tôi).
Tuy nhiên, cách tiếp cận của tôi đánh tôi là tối ưu và dễ bị lỗi (giả sử tôi vừa mới nổi loạn với 2 nhánh của chính mình).
Có ý kiến gì không?
Làm rõ: Tôi đang nói về một cuộc nổi loạn trong đó một loạt các cam kết đã được phát lại. Không chỉ một.
Cũng lưu ý rằng trong quá trình rebase, bạn có thể loại trừ các xác nhận hoặc xóa chúng; những thay đổi này không thể hoàn nguyên nếu không có con trỏ đến các nút ban đầu hoặc chọn lọc thông qua reflog, do đó, việc đánh dấu anh đào sẽ không hoạt động.
– Tạ Huệ An 10:47:35 21/12/2011