Tôi có một kho lưu trữ đơn giản với lịch sử tuyến tính của cam kết, như:Làm cách nào để áp dụng lại các cam kết ở trên cùng của chi nhánh không liên quan?
[A] -> [B] -> [C] -> [D] -> [E] ...
tôi về cơ bản cần phải loại bỏ cam kết A và B vì vậy tôi nghĩ rằng tôi muốn tạo ra một kho lưu trữ mới và muốn đạt được cái gì đó như:
[X] -> [C] -> [D] -> [E] ...
Vì vậy, tôi đã tạo kho lưu trữ mới, cam kết X đã tạo thủ công, lưu trữ thông tin liên quan từ A và B và bây giờ cần lệnh sẽ mang cam kết C, D, E, v.v ... nó trên đầu trang của cam kết mới của tôi X.
Làm thế nào để làm điều đó?
Edit: Hai vấn đề tôi có với các phương pháp cherry-pick đề xuất là:
- Chuyển cam mất ngày của họ. Có cách nào để bảo tồn ngày cam kết không?
- Khi tôi tìm nạp chính từ kho lưu trữ ban đầu (và chủ từ xa đó không có bất kỳ cam kết chung nào với kho lưu trữ mới), tôi gặp sự cố khi xóa các cam kết đã tìm nạp đó. Khi tôi làm
git branch -D myoriginalrepo/master
, nó nói rằng không có nhánh nào tồn tại trong khi tôi có thể thấy rõ ràng những cam kết đó trong công cụ GUI của tôi.
Tôi nghĩ bạn nên xem git cherry-pick. –
Bạn đã bao giờ tìm ra cách giữ ngày tháng thay đổi? – thinsoldier