git
V1.7.11 ile başlayarak, farklı git difftool --dir-diff
bir dizin gerçekleştirmek için kullanabilirsiniz .
Bu özellik örneğin Meld 3.14.2 ile iyi çalışır ve değiştirilen tüm dosyalara göz atmanıza izin verir:
git difftool --dir-diff --tool=meld HEAD~ HEAD
Bu kullanışlı bir Bash işlevidir:
git-diff-meld() (
git difftool --dir-diff --tool=meld "${1:-HEAD~}" "${2:-HEAD}"
)
Aşağıdaki yanıt git
v1.7.11'den daha eski kurulumlar için geçerlidir .
Aynı soru git posta listesinde de sorulmuştur .
Ben rasgele taahhütler arasında bir dizin fark gerçekleştiren bu e-posta iş parçacığına dayalı bir kabuk komut dosyası koymak.
Git v1.7.10 ile başlayarak, git-diffall
komut dosyası contrib
standart git kurulumuna eklenir .
V1.7.10 öncesi sürümler git-diffall
için GitHub'daki projeden yükleme yapabilirsiniz .
İşte proje açıklaması:
Git-diffall betiği git için dizin tabanlı bir fark mekanizması sağlar. Komut dosyası, hangi diff görüntüleyicisinin kullanıldığını belirlemek için diff.tool yapılandırma seçeneğine dayanır.
Bu komut dosyası, diff için bir dizi düzeltme belirtmek için kullanılan tüm formlarla uyumludur:
1) git diffall
: çalışma ağacı ve aşamalı değişiklikler arasındaki farkı gösterir
2) git diffall --cached [<commit>]
: aşamalı değişiklikler ve HEAD
(veya diğer adlandırılmış birleştirme) arasındaki farkı gösterir
3) git diffall <commit>
: çalışma ağacı ile adlandırılan
4 git diffall <commit> <commit>
arasındaki farkı gösterir
5) git diffall <commit>..<commit>
: iki adlandırılmış işlem arasındaki farkı gösterir 5) : aynı yukarıdaki gibi
6) git diffall <commit>...<commit>
: her ikisinin ortak atalarından başlayarak daldaki ve ikinciye kadar olan değişiklikleri göster<commit>
Not: tüm formlar isteğe bağlı bir yol sınırlayıcı alır [--] [<path>]
Bu komut dosyası Git listesinde Thomas Rast tarafından sağlanan bir örneğe dayanmaktadır .