2012-02-20 2 views
11

Когда я проверяю предыдущую фиксацию репозитория git, «git log» больше не показывает фиксации, которые были зафиксированы после фиксации в настоящий момент.Git log: журнал будущих изменений

Итак, вопрос: как получить журнал коммитов после того, как он был извлечен?

+3

Не совсем ответ, но я * очень * предлагаю использовать 'gitk -all' для визуализации нескольких ветвей и истории. – Irfy

ответ

17

Вы можете использовать --all флаг, чтобы увидеть все ревизии, как в

git log --all 

Если вы просто заинтересованы в будущих версиях, вы можете также использовать

git log [email protected]{1}  # assuming you just switched from the future master 
git log ..abcdef # assuming abcdef is the newest future commit 
+0

вы можете объяснить '.. @ {1}'? – drzaus

+0

@drzaus '@ {n}' является n-м фиксацией в вашей текущей ветке, поэтому '@ {1}' - это просто новейшая фиксация в текущей ветке. Параметр «...» указывает на то, что все достигнуто с фиксации вправо, недоступное для фиксации слева. Поэтому 'HEAD .. @ {1}' показывает все, что доступно, от новейшей фиксации в текущей ветке, но не текущую фиксацию (и 'HEAD' можно оставить без внимания). – phihag

1

Проблема заключается в том: вы не знаю, что дети совершают, только родительские комментарии.
И если вы внесете непосредственно чек SHA1, вы находитесь в Detached HEAD mode (то есть не на какой-либо ветке).

Одним из возможных решений было бы перечисление всех ветвей, содержащих ваши фиксации: «How to know which branch a “git log” commit belongs to?».
И затем сделайте журнал git для каждой из этих ветвей.

Смежные вопросы