2016-03-17 2 views
0

Хотелось бы узнать, какую версию моего кода я использовал вчера. (Или, точнее, хеш-код фиксации).Знает ли git, какая версия использовалась когда?

Git хранит эту информацию? Если да, то как его можно получить?

Если нет, любые идеи, почему бы и нет? И есть ли рекомендуемый способ сделать это?

+1

Что вы подразумеваете под «использованием»? Вы можете искать 'git reflog' – SLaks

+0

git reflog выглядит несколько полезным; есть ли способ увидеть, когда HEAD был при каждой фиксации? Я также хотел бы знать, какая ветка была проверена в каждый момент. – David

ответ

1

git reflog - ваш друг здесь.
Показывает, когда обновляются изменения, связанные с ветвями (или когда фиксация без ветвления выгружается в рабочий каталог).

Вы можете получить более полную информацию: git reflog --date=iso, где будет отображаться запись с рефлектором с датой.
Или: git log -g, который дает дату фиксации и полное сообщение фиксации.

Сообщение reflog также сообщит вам, когда HEAD переключает ветви, но не сообщит вам, какая ветка связана с какой фиксацией; эта информация может измениться, так как ветви могут быть сброшены в любое время.
Чтобы найти ветви, связанные с фиксацией, проще всего использовать один из многих инструментов графического интерфейса, которые просматривают ветви.

+1

Этот ответ полезен, но я не думаю, что он дает мне то, о чем я прошу. Я хочу знать, когда * была создана каждая запись в рефлоге, а не только когда была сделана фиксация. Поэтому в идеале было бы datetime, связанное с каждой записью «HEAD @ {t}» reflog, которая отражает, когда HEAD переключилась с указания на предыдущую запись («HEAD @ {t-1}) на эту запись (« HEAD @ { t} "). – David

+1

@David - обновлен для включения параметра -date для отображения даты ввода reflog – antlersoft

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