Đối với mỗi lỗi trong mã, tôi tạo một nhánh riêng biệt. Khi lỗi được cố định I sáp nhập chi nhánh này trong tổng thể, vì vậy tôi có lịch sử như minh họa dưới đây (chúng ta thấy hai chi nhánh với các bản sửa lỗi):Nhận git diff cho bất kỳ chi nhánh nào được hợp nhất
defect1 fix defect2 fix
a---b---c---d e---f
/ \ / \
---o---1---x---y---z---2---o---3---w---4---o---
Câu hỏi đặt ra là làm thế nào để có được diff cho fix1 (giữa đầu chi nhánh (1) và nhánh nhánh (2)) hoặc fix2 (khác nhau giữa (3) và (4)) tại bất kỳ thời điểm nào (ví dụ đối với bất kỳ khiếm khuyết đã đóng nào trong quá khứ).
Cập nhật: Câu hỏi thực tế là làm thế nào để tìm ra SHA summs của a
và d
hoặc e
và f
để thực hiện tiếp theo lệnh diff rõ ràng diff <commit> <commit>
Giống như nhận xét. SCM nhựa (www, plasticcm.com) phù hợp hoàn hảo với nhánh trên mỗi mẫu nhiệm vụ/lỗi.Sử dụng nhựa, bạn có thể nhấp chuột phải vào một chi nhánh và nhấn chi nhánh khác. Sử dụng dòng lệnh, bạn có thể thực hiện 'cm diff' –