Tôi có một nhánh chủ đề địa phương đang theo dõi một chi nhánh từ xa. Vì lợi ích của đối số, nói cam kết lịch sử giống như thế này:Git: Hủy tất cả thay đổi trên chi nhánh địa phương được phân tách
A--B--C--O1--O2--O3 (origin/phobos)
\
L1--L2--L3 (phobos)
Sau khi nhìn vào tương đối cam kết lịch sử, bây giờ tôi muốn loại bỏ tất cả các thay đổi đối với phobos
chi nhánh địa phương và làm cho nó trở lại để trở thành một trực tiếp bản sao của origin/phobos
, do đó lịch sử địa phương trông như thế này:
A--B--C--O1--O2--O3 (phobos origin/phobos)
tôi thực sự không muốn thay đổi địa phương để các chi nhánh phobos
, và tôi thực sự không muốn mọi mục hợp nhất để hiển thị trong các kho lưu trữ nguồn gốc sau đó. (Vì vậy, chỉ cần sáp nhập không phải là những gì tôi có trong tâm trí.)
Điều này có vẻ như nó phải được thực sự dễ dàng, nhưng google-fu của tôi đã thất bại tôi. Làm thế nào để tôi làm điều này?
Tuyệt vời. Điều này làm việc hoàn hảo. –
Một vấn đề với cách tiếp cận này so với việc đặt lại đầu của nhánh, là việc xóa nhánh sẽ thổi đi việc reflog của nhánh. Mặt khác, việc thiết lập lại nhánh không chỉ duy trì việc reflog mà còn ghi lại việc đặt lại trong reflog. Điều này làm cho hoạt động dễ dàng đảo ngược sau này, nếu cần. –
@Electrons_Ahoy Bạn nên thay đổi câu trả lời được chấp nhận ở đây thành của Dan (để những người như tôi, những người đã Google tìm cách để làm điều đó có khả năng chọn phương thức an toàn hơn). –