HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-26
1 <p>Git позволяет не только просматривать историю. Еще мы можем перемещаться по истории, загружая в рабочую директорию состояние кода на момент выполнения любого коммита. В этом уроке мы изучим, как перемещаться по истории с помощью команды git checkout.</p>
1 <p>Git позволяет не только просматривать историю. Еще мы можем перемещаться по истории, загружая в рабочую директорию состояние кода на момент выполнения любого коммита. В этом уроке мы изучим, как перемещаться по истории с помощью команды git checkout.</p>
2 <p>Для начала воспользуемся командой git log:</p>
2 <p>Для начала воспользуемся командой git log:</p>
3 <p>Переключимся на момент, когда был выполнен коммит с сообщением<em>add INFO.md</em>. Для этого используем команду git checkout &lt;хеш коммита&gt;:</p>
3 <p>Переключимся на момент, когда был выполнен коммит с сообщением<em>add INFO.md</em>. Для этого используем команду git checkout &lt;хеш коммита&gt;:</p>
4 <p>Выполните команду выше и изучите рабочую директорию. Обратите внимание, что хеш вашего коммита может отличаться. Вы увидите, что пропала часть изменений из-за возврата в прошлое. Сами изменения никуда не делись, и мы снова можем вернуться на последний коммит следующей командой:</p>
4 <p>Выполните команду выше и изучите рабочую директорию. Обратите внимание, что хеш вашего коммита может отличаться. Вы увидите, что пропала часть изменений из-за возврата в прошлое. Сами изменения никуда не делись, и мы снова можем вернуться на последний коммит следующей командой:</p>
5 <p>Переключившись в нужный коммит, можно не только изучить содержимое репозитория. Еще мы можем забрать какие-то изменения, которые были удалены, но снова понадобились для работы. Для этого достаточно их скопировать, переключиться на последний коммит и вставить в нужный файл.</p>
5 <p>Переключившись в нужный коммит, можно не только изучить содержимое репозитория. Еще мы можем забрать какие-то изменения, которые были удалены, но снова понадобились для работы. Для этого достаточно их скопировать, переключиться на последний коммит и вставить в нужный файл.</p>
6 <h2>Команда git branch</h2>
6 <h2>Команда git branch</h2>
7 <p>Переключение по коммитам отражается только на содержимом рабочей директории. Больше нигде не видно, где мы находимся. Из-за этого немало программистов забывают, где они находятся. Они начинают работать и очень удивляются, когда не получается выполнить коммит.</p>
7 <p>Переключение по коммитам отражается только на содержимом рабочей директории. Больше нигде не видно, где мы находимся. Из-за этого немало программистов забывают, где они находятся. Они начинают работать и очень удивляются, когда не получается выполнить коммит.</p>
8 <p>Самый простой способ узнать место нахождения - вызвать команду git branch. В обычной ситуации, когда мы находимся на последнем коммите, Git покажет такой вывод:</p>
8 <p>Самый простой способ узнать место нахождения - вызвать команду git branch. В обычной ситуации, когда мы находимся на последнем коммите, Git покажет такой вывод:</p>
9 <p>Но если прямо сейчас загружен коммит из прошлого, то вывод станет таким:</p>
9 <p>Но если прямо сейчас загружен коммит из прошлого, то вывод станет таким:</p>
10 <p>Такой способ проверки текущего местоположения требует постоянного внимания. Нужно не забывать его использовать. Конечно же, все забывают это делать, поэтому гораздо надежнее и удобнее вывести текущее местоположение прямо в командной строке. Например, так:</p>
10 <p>Такой способ проверки текущего местоположения требует постоянного внимания. Нужно не забывать его использовать. Конечно же, все забывают это делать, поэтому гораздо надежнее и удобнее вывести текущее местоположение прямо в командной строке. Например, так:</p>
11 <p>Именно так делают большинство профессиональных разработчиков. Как добиться такого вывода? Ответ на этот вопрос зависит от используемого командного интерпретатора:</p>
11 <p>Именно так делают большинство профессиональных разработчиков. Как добиться такого вывода? Ответ на этот вопрос зависит от используемого командного интерпретатора:</p>
12 <p>В Bash вывод местоположения происходит благодаря редактированию переменной окружения $PS1, подробнее об этом вы можете почитать по ссылке в дополнительных материалах.</p>
12 <p>В Bash вывод местоположения происходит благодаря редактированию переменной окружения $PS1, подробнее об этом вы можете почитать по ссылке в дополнительных материалах.</p>