Tôi thiết lập git diff
để bọc vào vimdiff, sử dụng" Git Diff with Vimdiff "làm hướng dẫn và hoạt động như mong đợi trừ khi có nhiều tệp có thay đổi.Xem tất cả `git diffs` với vimdiff
Khi có nhiều file với những thay đổi và tôi chạy git diff
, nó sẽ mở file trước và sau khi bỏ trường hợp đầu tiên của vimdiff, tôi trình bày với các thông báo sau:
external diff died, stopping at filename
Đây là một hoàn toàn khác với hành vi của tôi. Tôi đã có một thiết lập tương tự trong quá khứ với SVN và, khi phân biệt với nhiều tệp, tôi sẽ xem lại tệp đầu tiên, sau đó viết và thoát bằng cách sử dụng :wq
và tệp tiếp theo có sự khác biệt sẽ mở ra.
Đây không phải là trường hợp của Git. Tôi đã thử :n[ext]
, nhưng làm như vậy không điền vào cửa sổ bên trái với tệp gốc để tệp có thể được phân biệt với phiên bản đã sửa đổi.
Chỉ hai xu của tôi: Tôi đã đặt 'df' thành' diff' và 'dt' thành' difftool'. Ngoài ra, gõ ': qa' trong Vim sẽ chuyển sang changeset tiếp theo mà không lưu bất cứ thứ gì. – jonyamo
Giải pháp này là tuyệt vời ngoại trừ khi lưu thay đổi bạn phải gõ ": w!" thay vì: w – Asenar
@jonyamo Bí danh cài đặt phải luôn dựa trên tần suất chúng tôi đang sử dụng một số lệnh. Tôi thường sử dụng 'git diff' hơn' git difftool'. Vì vậy, tôi đã bí danh 'd' thành 'diff' và' 'dt' thành 'difftool '. Khả năng sử dụng là vấn đề hơn là tạo bí danh với mẫu. –