как найти git историю удаленной ветки после перезагрузки? - PullRequest
2 голосов
/ 12 марта 2020

Я по ошибке сбросил удаленную ветку (не восстановлен).

  # git reset #hash
    # git push origin develop

Я хотел бы проверить последние коммиты, сделанные в эту ветку

Как я могу получить все журналы / историю этой удаленной ветви? (моя локальная ветвь также обновлена ​​с помощью пульта дистанционного управления, поэтому я не вижу там никаких изменений)

Если я это сделаю;

# git log origin/develop
# git log develop

Я могу получить журналы до точки сброса. Не после этого. :(

Ответы [ 2 ]

1 голос
/ 12 марта 2020

Когда вы изменяете ссылку, то, что вы делаете, когда делаете коммит в ветке или сбрасываете его на другой коммит, вы можете получить доступ к предыдущим значениям этой ссылки, используя формат <refname>@{<n>}.

В вашем случае вы должны увидеть git log develop@{1}, чтобы увидеть журнал из последней подсказки ветви разработки.

То же самое верно для origin/develop@{1}, но "для предыдущих значений «здесь не обязательно включать все изменения, например, если ветвь была зафиксирована кем-то еще несколько раз между вашими собственными git fetch командами.

В общем, вы можете использовать git reflog чтобы увидеть изменения в ссылках, которые, как мы надеемся, будут иметь такую ​​строку в верхней части:

1234567 (HEAD -> develop) HEAD@{0}: reset: moving to 1234567abcde

До этого будут предыдущие значения ссылок любых веток, которые вы извлекли или зафиксировали. Вы можете использовать это, чтобы решить, что делать дальше.

1 голос
/ 12 марта 2020

Вы можете использовать команду git reflog, чтобы выяснить, при какой фиксации (ха sh) указатель develop указывал до сброса, и использовать эту ха sh по мере необходимости - создать из нее новую ветвь, выполнить сброс вернуться назад и восстановить состояние предварительной перезагрузки или просто просмотреть журнал git для этого ха sh, в зависимости от потребностей. Затем pu sh снова внесите изменения, чтобы восстановить состояние и на сервере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...