Git Checkout от удаленного - PullRequest
       0

Git Checkout от удаленного

1 голос
/ 14 октября 2011

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

Ответы [ 2 ]

5 голосов
/ 14 октября 2011
git checkout -b <branch_name> <sha1>

(это создаст новую ветку и оформит заказ на конкретном коммите, который вы хотите)

Если вы просто хотите сбросить текущую ветку на него:

git reset --hard <sha1>

Обновитьна sha1:

Что я имел в виду под Sha1, так это длинный хеш, связанный с каждым коммитом и идентифицирующий его.Вы можете легко найти его, выполнив git log

Пример вывода журнала git:

commit 10a45e0f0680b8fd493ed0264fe24be2648af1b3
Author: manojlds <manojlds@gmail.com>
Date:   Thu Oct 13 19:04:23 2011 -0600

    some other commit

10a45e0f0680b8fd493ed0264fe24be2648af1b3 - это хэш sha1.

2 голосов
/ 14 октября 2011
 git log # to check what SHA1 you need
 git checkout -b tmp SHA1 # to checkout the right SHA1 and create a tmp branch

Если вы извлекаете напрямую SHA1, вы получите DETACHED HEAD , с риском совершения некоторых ссылок без ссылок.
См. Например " git: как получить все файлы на определенную дату".

Обратите внимание, что у вас есть различный синтаксис для проверки по дате :

<refname>@{<date>}, e.g. master@{yesterday}, HEAD@{5 minutes ago}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...