Git: Cantumkan semua perubahan yang tidak digabungkan di git

125

Membuat cabang untuk berbagai topik, dan tidak menghapusnya secara teratur ketika saya tidak membutuhkannya lagi, saya sekarang telah memiliki sekitar 50 cabang;)

Saya mencoba menghapus cabang dan beberapa di antaranya memiliki perubahan yang tidak digabungkan.

Yang saya inginkan adalah kemampuan untuk melihat dengan tepat perubahan apa yang ada di cabang mana pun di repo saya yang tidak ada di master. Apakah ada cara untuk melakukan itu

Terima kasih sebelumnya.

Lakshman Prasad
sumber

Jawaban:

223

Untuk membuat daftar cabang dengan komit yang tidak digabung menjadi master:

git branch --no-merged master

Untuk membuat daftar komitmen yang relevan:

git cherry -v master <branch>
gawi
sumber
6
"git branch --no-merged master" tidak menunjukkan cabang jarak jauh - petunjuk untuk melihatnya juga?
Peter Toft
23
Tambahkan -abendera untuk menyertakan cabang jarak jauh.
gawi
Jika memberikan kesalahan u, coba ganti masterdengan originas upstream.
CodeFarmer
2
perhatikan bahwa cabang yang digabungkan dengan squash & merge akan tetap menunjukkan perbedaan, meskipun tidak ada.
Michael Scott Cuthbert
Menambahkan -aparameter akan menampilkan cabang lokal dan jarak jauh dan dengan -rhanya akan menampilkan cabang jarak jauh.
pafivi
26

Saya menemukan pertanyaan ini ketika saya mencoba mengingat sintaks ...

git log <branch> --not master --stat

Ini akan menunjukkan komitmen ke <branch> yang belum digabungkan ke master. --Stat akan menyertakan file yang diubah dengan komit. Anda juga dapat menggunakan ini untuk membandingkan dua cabang dengan mengganti master dengan nama cabang yang berbeda.

Matt
sumber
-5

Sangat mudah untuk mendapatkan gambaran umum tentang cabang Anda dengan gitk.

tamasd
sumber
11
Tidak jika Anda memiliki> 20 cabang
Peter Toft