git diff `git merge-base master branch`..branch
Gabung basis adalah titik di mana branchmenyimpang dari master.
Git diff mendukung sintaks khusus untuk ini:
git diff master...branch
Anda tidak boleh menukar sisi karena Anda akan mendapatkan cabang lainnya. Anda ingin tahu apa yang berubah branchkarena itu menyimpang dari master, bukan sebaliknya.
Terkait longgar:
Perhatikan bahwa ..dan ...sintaksis tidak memiliki semantik yang sama seperti pada alat Git lainnya. Ini berbeda dari makna yang ditentukan dalam man gitrevisions.
mengutip man git-diff:
git diff [--options] <commit> <commit> [--] [<path>…]
Ini untuk melihat perubahan antara dua arbitrer <commit>.
git diff [--options] <commit>..<commit> [--] [<path>…]
Ini identik dengan formulir sebelumnya. Jika <commit>di satu sisi dihilangkan, itu akan memiliki efek yang sama dengan menggunakan sebagai HEADgantinya.
git diff [--options] <commit>...<commit> [--] [<path>…]
Formulir ini untuk melihat perubahan pada cabang yang berisi dan sampai yang kedua <commit>, dimulai pada nenek moyang yang sama dari keduanya <commit>. " git diff A...B" sama dengan " git diff $(git-merge-base A B) B". Anda dapat menghilangkan salah satu dari itu <commit>, yang memiliki efek yang sama dengan menggunakan HEADgantinya.
Untuk berjaga-jaga jika Anda melakukan sesuatu yang eksotis, perlu dicatat bahwa semua <commit>uraian di atas, kecuali dalam dua bentuk terakhir yang menggunakan notasi "..", bisa berupa apa saja <tree>.
Untuk daftar cara mengeja yang lebih lengkap <commit>, lihat bagian "MENGENAL REVISI" di gitrevisions[7]. Namun, "diff" adalah tentang membandingkan dua titik akhir, bukan rentang, dan notasi rentang (" <commit>..<commit>" dan " <commit>...<commit>") tidak berarti rentang seperti yang didefinisikan dalam bagian "TIPE SPESIFIKASI RANG" di gitrevisions[7].
git diff master..branch. Anda dapat mempersingkatgit diff master..jika Anda berada di cabang. Ther1..r2sintaks adalah singkatan^r1 r2yang berarti "menunjukkan segala sesuatu yang turun darir2dan tidak dicapai darir1".git help gitrevisionsmemiliki informasi tentang berbagai sintaks yang dapat Anda gunakan.