Перерахуйте всі коміти (у всіх відділеннях) для даного файлу


94

Це питання тісно пов'язане зі списком усіх комісій для певного файлу, однак воно інше. Я хочу дізнатися, які коміти в усіх галузях змінили заданий файл.

Щоб зробити його більш складним, даний файл може бути, а може і не бути в робочому дереві.

Відповіді:


54

Можна використовувати gitk

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

напр

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


1
Я не знаю, чому мою відповідь було оскаржено, але ваша не вважає, що питання спеціально вимагає журналу в усіх галузях. Ви просто даєте відповідь, з якою ОР вже пов'язане.
manojlds

2
Я не був прихильником, але для цього потрібен --allчи щось подібне, щоб перейти більше історії, ніж нинішня галузь.
wjl

Чому голоси? Це прекрасно працює. Обидві відповіді правильні. Один працює для текстової консолі, інший для GUI gitk. Чи можу я позначити як правильне?
Саураб Нанда

@Saurabh Nanda: Позначте ту, яку ви вважаєте корисною для вас.
Кіт Хо

@saurabh - Ця відповідь відредагована. Kit Ho - згадайте, що ви редагуєте. І це виглядає так, ніби обидві відповіді були спочатку правильними.
manojlds

116

Спробуйте це:

git log --all -- path

8
Nb. вам може знадобитися --full-historyваріант, залежно від того, що ви хочете точно побачити: див. розділ про спрощення історії в git-log або gitrevision manpages.
Якуб Нарбський

Однозначно правильна відповідь, якщо ви не хочете використовувати графічний інтерфейс.
Matt Setter

47

Командний рядок

Я настійно рекомендую додати параметр графіку з git log:

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

git log --graph --all - <ім'я файлу>

Гай

Gitk - це досить старий інструмент, який не завжди встановлюється, я рекомендую інший безкоштовний інструмент, наприклад, SourceTree:

SourceTree


7
Як зареєструвати файл і показати його графік гілок у SourceTree? Клацніть правою кнопкою миші на файлі та виберіть "Журнал вибраних ..." не відображає історію всіх гілок.
aleung
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.