2015-06-22 2 views
0

Я только что сделал фиксацию в своем проекте, и я создавал тег на каждом шагу, но, похоже, последнее совершение было сделано в некоторых из этих тегов. Дело в том, что я не могу больше увидеть последнее изменение с минут назад. Как я могу проверить в своем последнем фиксации без каких-либо тегов в моем проекте? Мне нужен последний. Любая помощь?Как я могу получить последнюю фиксацию во всех тегах?

Это то, что я делаю:

  1. Кодирование простой модуль входа на 60%
  2. Изготовление фиксации на 60% модуля авторизации (после того, как мерзавец добавить -A) git commit -m "login module to 60%"
  3. Модуль логирования окончательного кодирования при 100%
  4. Создание тега с: git tag -a myTag-01 -m «Модуль входа в систему завершен»
  5. И так далее ...
+0

Вы добавляли метки для каждой фиксации? –

+0

@GuillemoMansilla после некоторых изменений я делал коммиты. после выполнения задачи, скажем, «логин-функциональность», я создал тег под названием «step-login» – RicardoGonzales

+1

«Последнее совершение» неоднозначно - вы смотрите на него с исконной или хронологической точки зрения? (Вы хотите, чтобы последнее, что вы совершили, независимо от того, в какой день он был создан, или вы хотите, чтобы созданная вещь была создана в самый последний день? Если вы переходите на переработку, может быть разница между ними.) – Makoto

ответ

1

Просто проверьте название ветки, для которой требуется последняя фиксация. Поэтому, если вы работаете на master, сделайте git checkout master.

(Редактировать: после получения большего освещения проблемы из комментариев это не так просто, как описано выше).

ОК, так что я предполагаю, что вы совершили какое-либо действие в автономном состоянии HEAD. Это означает, что вы не были на самом деле в филиале, когда вы совершали, поэтому нет ничего, указывающего на вашу последнюю фиксацию; вам нужно его найти. Сделайте это, выполнив команду git reflog. Это покажет вам, в частности, ваши недавние коммиты. Найдите ближайшего к вершине, который выглядит как фиксация (т. Е. Тот, у кого есть сообщение фиксации). Хеш будет указан рядом с ним; используйте это, чтобы сделать git checkout <hash>.

Итак, теперь, когда вы находитесь на своем совершении, у вас есть несколько вариантов. То, что вы должно do, создает ветвь, которая указывает на это фиксацию с помощью git checkout -b branch-name. Альтернативой было бы просто пометить его, как будто, кажется, вы делали. Преимущество создания нового филиала заключается в том, что каждый раз, когда вы фиксируете на этой ветке, ветка будет переходить к этой фиксации, поэтому вы снова не сталкиваетесь с такими проблемами.

Кроме того, я бы сильно рекомендовать вам дать Git book твердый читать. Это сделает вашу жизнь намного проще в будущем.

(Edit2)

Кстати, если вы действительно помечено ваш последний коммит, вы можете перечислить все теги с git tag -l и получить хэш, как хорошо. Фактически, как только вы знаете имя тега, вы можете просто git checkout <tag-name>.

+0

Дело в том, что я не знаю, в какой теге я был зачислен 10 минут назад. – RicardoGonzales

+0

Вам не нужно знать тег, только ветку. Когда вы делаете «git status», что вы видите? Кроме того, если вы делаете 'git branch', вы можете видеть все ветви в своем репо. –

+0

'HEAD отсоединен от mytag-11 ничего не делать, рабочий каталог clean' – RicardoGonzales

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