Як отримати git журнал з усіх гілок для автора відразу?


213

Мені потрібно отримати звіт про всі вчинки, які зробив автор. Поки що у мене є сценарій, який містить наступну команду:

git log --pretty=format:"%ad:%an:%d:%B" --date=short --reverse --all --since=2.months.ago --author=Petr

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

Іншими словами, чи може git зробити зворотно відсортовану (за датою) послідовність усіх комісій у сховищі та витягнути інформацію журналу з цієї послідовності?

Вирішено: (скопійовано з коментаря нижче, що приховано інакше)

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


Здогадайтесь, ви можете написати скрипт оболонки для цього: git logприймає committishяк перший аргумент: git log mybranch(і перелічить усі, з якими ви відділенням git branch).
Олександр Павлов

@AlexanderPavlov: Я, мабуть, не розумію. Що таке committish? Чи можливо отримати інформацію за допомогою однієї команди git?
пепр

1
Я отримую комітети з усіх галузей, не тільки нинішніх? Це очікується з моменту надання --all. Ваша команда правильна
CharlesB

1
@AlexanderPavlov: Не турбуйтеся з git rev-listрозбором, git log --allце добре.
CharlesB

1
@CharlesB: Це те, про що я думав --all, але, мабуть, для мене це не працює. Я не розумію його пояснення довідки: Робіть вигляд, ніби всі відповіді в refs/списку вказані в командному рядку як <commit>.
pepr

Відповіді:


186

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


64

Замість --allвас можуть захотіти використовувати --branches, оскільки --allтакож включає refs/tagsі refs/remotes.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.