[МУЗЫКА]
Давайте теперь рассмотрим некоторые основные команды Git, которые очень полезны для
нас в этой специализации.
Git гораздо больше, чем то, что мы освещаем в этом упражнении.
Чтобы начать работу, перейдите в удобное расположение на компьютере,
а затем создайте папку с именем git-test.
Затем откройте эту папку в своем любимом редакторе.
Здесь у меня есть папка git-test, которую мы только что
создали в моем Visual Studio Code.
Позвольте мне добавить файл в эту папку с именем index.html.
Теперь вы можете видеть, что я добавил некоторый HTML-код в этот файл index.html.
Давайте сохраним изменения, теперь переключимся на нашу командную строку.
В командной строке перейдите в папку git-test, и
давайте инициализируем эту папку, чтобы быть репозиторием Git.
Поэтому, чтобы сделать это, добавьте командную строку, введите, git init.
Теперь эта папка была инициализирована как репозиторий Git, так что
это наша первая команда Git, которую мы узнали, git init.
Это инициализирует текущую папку как репозиторий Git, и
когда он инициализирует папку, он помечает эту папку как мастер.
Это главная ветка для моего Git, теперь давайте не будем беспокоиться о ветках и
так далее, мы не будем иметь дело с этим в этом курсе.
Мы будем работать только с главной веткой в этой конкретной специализации,
так что это будет отмечено как мастер.
Теперь это начальная точка нашего репозитория,
следующая команда, которую мы собираемся посмотреть, - это статус git.
Если вы введете git status в командной строке, он сообщит вам текущий статус
папки, поэтому давайте сделаем это в командной строке и посмотрим, что он показывает.
В командной строке введите git status и
прочитайте информацию, введенную в командной строке.
Вы видите, что он говорит: «На ветке мастер», так что это главная ветка, на которой мы находимся,
и он говорит, что неотслеживаемые файлы, а затем показывает index.html красным.
На конкретном компьютере он может использовать разные цвета или
представлять это по-разному, но это то, что он показывает на моем Mac.
Итак, теперь этот файл index.html, который мы только что создали в этой папке,
теперь не был добавлен в наш репозиторий Git.
Итак, давайте продолжим и добавим этот файл в репозиторий Git.
Поэтому, чтобы сделать это, мы говорим, git add, и вы можете просто сказать точку,
что означает, что все файлы в текущем каталоге будут добавлены к
тому, что называется промежуточной областью моего репозитория Git.
Итак, теперь, если я снова напечатаю статус git, вы увидите,
что файл index.html помечен зеленым цветом, и
он говорит, что изменения должны быть зафиксированы там, а затем показывает имя файла.
И затем,
так что это означает, что этот файл теперь готов для фиксации в моем репозитории Git.
Таким образом, следующая команда, которую мы видели, была git add, используя git add,
вы можете добавить файл или папки в промежуточную область.
Поэтому, как только вы добавите его в промежуточную область, вы можете зафиксировать этот снимок
состояния нашей папки в наш репозиторий Git.
Таким образом, это означает, что когда вы делаете git commit,
то, что эта команда будет делать, это зафиксировать
текущее состояние наших папок в нашем репозитории Git.
Таким образом, все файлы, как они существуют на данный момент, как только они были поставлены
с помощью git add, то они будут зафиксированы через репозиторий Git,
затем мы выполняем папку команд git.
Итак, на данный момент, когда мы выполняем команду git,
наше первоначальное состояние теперь будет изменено на первую фиксацию
в репозитории Git, так что давайте продолжим и сделаем это.
Вернитесь в командную строку, давайте напечатаем git commit,
а затем мы можем даже добавить сообщение к нашей фиксации.
Поэтому я собираюсь сказать git commit -m «first commit»,
потому что это наша первая фиксация в нашем репозитории Git.
Поэтому, когда я это делаю, он говорит: хорошо, один файл был добавлен в репозиторий Git, и
некоторая другая информация будет введена в окно команд.
Итак, давайте теперь проверим, снова, git статус,
и теперь вы видите, что он говорит, что ничего не делать, рабочий каталог чист.
Так что это означает, что текущее состояние моего рабочего каталога или
рабочей папки было зафиксировано в репозитории Git.
Таким образом, моментальный снимок был зафиксирован в моем репозитории Git, теперь я могу ввести следующую
команду, называемую git log —oneline.
И посмотрите, что он показывает там число, восьмизначное число там, а
также показывает сообщение, которое мы помещаем в нашу фиксацию, говорящее «first commit».
Так что это журнал всех коммитов, которые были помещены в мой репозиторий Git.
Итак, возвращаясь к нашей следующей команде git,
мы увидели, что git log - oneline
покажет нам краткий журнал всех коммитов.
Если вы просто введете git log,
он будет отображать гораздо более подробную информацию обо всех коммитах, но
этого достаточно для получения информации, которую мы требуем.
Давайте вернемся к нашему редактору здесь, в Visual Studio Code.
Поэтому я собираюсь добавить больше изменений в мой файл index.html, поэтому я добавлю,
поэтому я изменил свой файл index.html.
Теперь позвольте мне добавить еще одну папку в папку git-test, поэтому
я создам подпапку здесь с именами шаблонов.
И внутри этой папки шаблонов
я собираюсь создать другой файл с именем test.html.
Это просто, чтобы показать вам, как Git может фиксировать всю
иерархию папок в своем репозитории.
Итак, с test.html теперь,
я просто собираюсь скопировать все из
моего index.html в мой test.html и
сохранить изменения Возвращаясь к командной строке,
давайте теперь проверить статус нашего репозитория Git и этой папки.
Таким образом, ввод статуса git показывает, что файл index.html, который мы
уже добавили ранее в репозиторий, теперь был изменен,
поэтому есть более новая версия файла index.html.
Кроме того, он показывает, что
в этой папке есть некоторые неотслеживаемые файлы, называемые шаблонами.
Давайте добавим все эти изменения в наш репозиторий, в промежуточную область.
Итак, снова введите git add., а
затем все эти файлы будут добавлены в промежуточную область.
Опять же, проверяя статус, теперь вы увидите, что изменения, которые были
добавлены в промежуточную область, поэтому все эти файлы были добавлены в промежуточную область.
Давайте сделаем еще одну фиксацию, поэтому я бы сказал git commit -m,
«Second commit», а затем, давайте проверим журнал.
Если вы проверите журнал, теперь вы увидите, что
в моем репозитории Git есть две фиксации, первая и вторая фиксация.
И обратите внимание, что каждому из них дается разное число.
Если вы хотите увидеть полную информацию о журнале, вы можете просто ввести git log.
И тогда вы увидите там больше деталей,
чем то, что вас интересует.
Поэтому обратите внимание, что одна строка
фиксации дает только первые несколько символов моего номера фиксации там.
Этого достаточно для того, чтобы мы могли работать.
Позвольте мне теперь вернуться к моей Visual Studio и добавить еще одну,
еще одну строку в мой файл index.html.
Итак, теперь мой файл index.html был изменен, и давайте сохраним изменения.
Возвращаясь к командной строке,
выполнение статуса git показывает, что файл index.html был изменен.
Итак, давайте добавим это в промежуточную область, а
затем сделаем третью фиксацию, так что скажем git add. ,
статус git.
Теперь вы увидите, что index.html, измененная версия, была добавлена.
Теперь мы можем сказать git commit,
«Third commit», и сделать git log —oneline,
и вы увидите, что в нашем репозитории есть три коммита.
Итак, теперь наш репозиторий содержит снимки трех разных точек,
в конце первой фиксации, в конце второй фиксации и
в конце третьей фиксации.
Теперь мы также можем откатить изменения,
мы можем вернуть репозиторий к предыдущей версии.
Мы можем вытащить файл из старого коммита, а
затем заменить существующий файл в нашем каталоге из старого коммита.
Итак, давайте посмотрим, как мы можем работать с этими вещами
, изучив еще пару команд.
На этом этапе наш файл index.html находится в текущем состоянии,
поэтому вы можете заметить, что он имеет h1 и два p.
Давайте теперь посмотрим на следующую команду Git.
Следующая команда Git, о которой мы собираемся узнать, - это проверка git.
Таким образом, эта команда checkout позволяет нам проверить файл
из предыдущей фиксации в нашем репозитории Git.
Поэтому, если нам не нравится текущий файл, который у нас есть в нашей папке,
и мы хотим вернуться к предыдущей версии файла.
Мы всегда можем проверить файл из предыдущей фиксации или
из текущей фиксации, а затем продолжить работу с этим файлом.
Итак, давайте воспользуемся этим и посмотрим некоторые дальнейшие изменения в нашем репозитории Git.
Возвращаясь к нашей командной строке, мы помним, что
между вторым и третьим фиксацией я внес изменения в свой файл index.html.
Предположим, я хочу вернуться к файлу index.html из моей второй фиксации.
Поэтому я могу просто сказать, git checkout 900cfcf,
так что это идентификатор фиксации,
число, которое идентифицирует эту конкретную фиксацию.
И тогда я могу сказать index.html, и вы заметили бы
, что весь файл теперь будет выписан в мой текущий рабочий каталог.
Перейдя к моему коду Visual Studio,
вы теперь заметите, что мой файл index.html вернулся к предыдущей версии.
Таким образом, изменение, которое я сделал до третьей фиксации, теперь исчезло.
Таким образом, мой файл index.html был восстановлен в своем состоянии в конце второй фиксации.
Теперь в командной строке, если я введу статус git,
вы заметите, что этот файл index.html,
который вернулся к тому, что он был в конце второй фиксации.
Теперь он уже был поставлен, поэтому использование этой git
checkout вытащит старую версию файла, а затем заменит то, что находится в текущем
каталоге, а затем он также проверит его в промежуточную область.
Итак, теперь, если я это сделаю, а затем я понимаю, что это то, что я хочу,
я могу просто сделать еще одну фиксацию на данном этапе.
И тогда этот файл может быть зафиксирован как четвертая фиксация,
но предположим, мне это не нравится.
Я хочу вернуться к файлу index.html в
конце третьей фиксации, тогда все, что я могу сделать, это сказать git reset,
HEAD и index.html.
Итак, на данный момент происходит то, что index.html,
измененная версия, которую я проверил, все еще существует, но
этот файл не был поставлен из промежуточной области.
Если вы вернетесь и посмотрите на index.html в своем
редакторе, он все равно покажет состояние в конце второй фиксации,
потому что мы вытащили этот файл, используя проверку для этого.
Теперь, если мы хотим вернуть его обратно к тому, что было в конце третьей фиксации,
тогда мы делаем еще одну проверку из третьей фиксации.
Перейдя в наше командное окно, введите статус git, и
вы заметите, что index.html помечен как измененный.
Но он также показывает этот конкретный оператор здесь, он говорит git checkout -
и имя файла, чтобы отменить изменения в рабочем каталоге.
Таким образом, это один из способов, которые
вы можете отменить изменения, внесенные в конкретный файл, соответствующий предыдущему фиксации.
Поэтому позвольте мне восстановить этот index.html обратно к тому, что он был
в конце третьей фиксации.
Поэтому для этого я просто скажу git checkout -
index.html, а затем, если я это сделаю
, статус Git, он показывает, что мой каталог чист, и в основном мой
каталог был восстановлен до состояния конца третьего комментария.
Переходя к файлу в моем Visual Studio Code, я вижу, что файл был
восстановлен обратно к тому, что он был в конце третьей фиксации.
Поэтому, если вы внесли изменения в файл после фиксации, и вы хотите просто
отменить эти изменения, вы можете просто проверить файл из последней фиксации.
И тогда все ваши изменения, которые вы сделали после последней фиксации, будут отброшены в
этой части..
Таким образом, это некоторые основные команды, которые очень полезны для
вас, когда вы проходите через курсы и
специализацию, потому что вы можете совершить в конце каждого упражнения.
И по мере продвижения вперед
у вас все равно будет зафиксированная версия
состояния вашей папки в конце предыдущего упражнения.
Таким образом, если вы проводите новое упражнение, и вы обнаружите, что вы
допустили ошибки, и вы хотите вернуться к предыдущей фиксации.
У вас всегда будет способ сделать это с помощью команд
, которые мы только что узнали.
Таким образом, с этим базовым пониманием этих нескольких команд Git,
мы сможем продолжить понимание и
использование Git в курсах этой специализации.
Итак, теперь мы рассмотрели сброс git для определенного файла или git reset в целом.
Если вы просто напечатаете get reset, он восстановит вас к последней фиксации.
Таким образом, он сбросит промежуточную область до последней фиксации,
не нарушая изменений, которые вы сделали в вашем рабочем каталоге.
Поэтому после сброса вы можете проверить предыдущую
версию файла, который вы зафиксировали в предыдущей фиксации.
Таким образом, вы можете восстановить свою папку обратно в том месте, где вы были
в начальной точке предыдущей фиксации.
Поэтому иногда, когда вы проходите упражнение, и вы понимаете, что совершили ошибку,
у вас всегда есть способ вернуться к предыдущей версии.
Поэтому с этими командами я думаю, что вы все готовы продолжать использовать
Git на курсах этой специализации.
Итак, в конце этого упражнения вы сделали это?
[ МУЗЫКА]