Sau nhiều lần tìm kiếm, tôi không tìm thấy phương pháp thỏa đáng dễ sử dụng để xem toàn bộ lịch sử của tệp được di chuyển trong Git và quan trọng hơn trong Gitk. Sử dụng "git log --follow [filePath]" và thậm chí "gitk --follow [filePath]" cung cấp cho bạn các cam kết mà tệp đã được tham gia nhưng sẽ không hiển thị cho bạn lịch sử thay đổi thực sự của tệp trước khi di chuyển. Do đó, tôi đã đưa ra một giải pháp khắc phục thô lỗ nhưng đơn giản.Sử dụng gitk để xem toàn bộ lịch sử của một tệp đã di chuyển
- Thực hiện gitk trên tệp đã được di chuyển: “gitk [newFilePath]”. Sao chép ID SHA1 của cam kết đầu tiên, đây phải là cam kết nơi tệp đã được di chuyển.
- Thực hiện gitk trên ID SHA1 được sao chép: “gitk [SHA1ID]”. Cam kết mới nhất nên là khi di chuyển đã xảy ra. Tìm tệp đã di chuyển và sao chép đường dẫn cũ.
- Thực hiện gitk trên ID SHA1 chúng tôi chỉ cần sao chép và đường dẫn tập tin cũ: “gitk [SHA1ID] - [oldFilePath]”
Quá trình này sẽ cho phép bạn xem lịch sử của tập tin trước di chuyển. Nếu đã có nhiều bước di chuyển, quá trình trên có thể được lặp lại.
Nếu có giải pháp nào tốt hơn cho vấn đề này, đặc biệt nếu có cách kết hợp các bước này để hiển thị toàn bộ lịch sử với các bước di chuyển, nó sẽ được đánh giá cao.
Đây là giải pháp tuyệt vời! Tôi không thấy giải pháp của người khác sử dụng chuyển đổi -p với "git log --follow" trước đây.Nó sẽ được ưa thích để xem nó trong gitk nhưng tôi chắc chắn sẽ sử dụng phương pháp này! –
Nếu bạn (vẫn đang) tìm cách GUI để thực hiện việc này - hãy thử SourceTree (liên kết trong câu trả lời của tôi) – Chris