Lihat http://git.or.cz/gitwiki/GitTips , bagian "Cara membandingkan dua repositori lokal" di "Umum".
Singkatnya Anda menggunakan variabel lingkungan GIT_ALTERNATE_OBJECT_DIRECTORIES untuk memiliki akses ke database objek dari repositori lain, dan menggunakan git rev-parse dengan --git-dir
/ GIT_DIR untuk mengonversi nama simbolis dalam repositori lain ke pengidentifikasi SHA-1.
Versi modern akan terlihat seperti ini (dengan asumsi Anda berada di 'repo_a'):
GIT_ALTERNATE_OBJECT_DIRECTORIES = .. / repo_b / .git / objek \
git diff $ (git --git-dir = .. / repo_b / .git rev-parse --verver HEAD) KEPALA
di mana ../repo_b/.git
path ke objek database di repo_b (itu akan menjadi repo_b.git jika itu repositori telanjang). Tentu saja Anda dapat membandingkan versi sewenang-wenang, tidak hanya KEPALA.
Perhatikan bahwa jika repo_a dan repo_b adalah repositori yang sama, mungkin lebih masuk akal untuk menempatkan keduanya dalam repositori yang sama, baik menggunakan " git remote add -f ...
" untuk membuat nama panggilan untuk repositori untuk pembaruan berulang, atau mengabaikan " git fetch ...
"; seperti yang dijelaskan dalam tanggapan lain.