Buat daftar semua komit (di semua cabang) untuk file tertentu

95

Pertanyaan ini berkaitan erat dengan Buat daftar semua komit untuk file tertentu, namun berbeda. Saya ingin mengetahui komit mana, di semua cabang , yang telah memodifikasi file tertentu.

Untuk membuatnya lebih kompleks, file yang diberikan mungkin atau mungkin tidak ada di pohon kerja.

Saurabh Nanda
sumber

Jawaban:

55

Anda bisa menggunakan gitk

gitk --all <path to file> (you need to install gitk)

misalnya

gitk --all -- /home/kit.ho/project/abc.txt

Kit Ho
sumber
1
Saya tidak tahu mengapa jawaban saya diturunkan, tetapi Anda tidak menganggap bahwa pertanyaan tersebut secara khusus meminta log di semua cabang. Anda hanya memberikan jawaban yang sudah ditautkan oleh OP.
manojlds
2
Saya bukan downvoter, tetapi ini membutuhkan --allatau sesuatu yang serupa untuk melewati lebih banyak sejarah daripada cabang saat ini.
wjl
Mengapa suara negatif? Ini bekerja dengan baik. Kedua jawabannya benar. Satu berfungsi untuk konsol teks, yang lainnya untuk GUI gitk. Bisakah saya menandai keduanya dengan benar?
Saurabh Nanda
@Saurabh Nanda: Tandai yang menurut Anda berguna untuk Anda.
Kit Ho
@saurabh - Jawaban ini telah diedit. Kit Ho - Sebutkan bahwa Anda sedang mengedit. Dan membuatnya tampak seolah-olah kedua jawaban itu pada awalnya benar.
manojlds
116

Coba ini:

git log --all -- path
manojlds
sumber
8
Nb. Anda mungkin memerlukan --full-historyopsi, bergantung pada apa yang sebenarnya ingin Anda lihat: lihat bagian tentang penyederhanaan riwayat di git-log atau gitrevision manpages.
Jakub Narębski
Jawaban yang pasti benar, dengan asumsi Anda tidak ingin menggunakan GUI.
Matt Setter
48

Garis komando

Saya akan sangat menyarankan untuk menambahkan opsi grafik dengan git log:

git log --graph --all -- <filename>

git log --graph --all - <filename>

Gui

Gitk adalah alat yang cukup tua dan tidak selalu diinstal, saya merekomendasikan alat gratis yang berbeda seperti misalnya SourceTree:

SourceTree

Drum
sumber
7
Bagaimana cara membuat log file dan menampilkan grafik cabangnya di SourceTree? Klik kanan pada file dan pilih "Log Selected ..." tidak menampilkan riwayat di semua cabang.
aleung