Вы когда-нибудь хотели, чтобы у вас был компьютер времени для кода? Ну, Git именно это, и так многое другое!
Если вы не знакомы с Git, это система управления версиями, которая помогает отслеживать изменения в коде. Вы можете сохранить моментальный снимок проекта в определенный момент времени, а затем внести экспериментальные изменения, не рискуя работой, так как вы всегда можете вернуться к моментальному снимку.
GitHub — это платформа, созданная вокруг Git, что позволяет сохранять проекты Git в облаке и работать с ними с другими разработчиками.
Хотя Git может быть сложным, это мощный и необходимый инструмент для любого разработчика. В этой статье приведены все инструменты, необходимые для использования Git в повседневном рабочем процессе.
Необходимые компоненты
Чтобы следовать этому руководству, необходимо установить Visual Studio Code.
Основы обучения Git с помощью GitHub Desktop
Для стандартных операций Git рекомендуется GitHub Desktop, приложение, которое позволяет визуально взаимодействовать с Git, а не с помощью записанных команд. В этом разделе описано, как использовать GitHub Desktop для быстрого выполнения наиболее распространенных операций Git.
Настройка GitHub Desktop
Если вы впервые используете GitHub Desktop, необходимо установить его и подключить учетную запись GitHub .
- Скачайте GitHub Desktop.
- Откройте GitHub Desktop, а затем нажмите кнопку GitHub.com и авторизовать GitHub Desktop для доступа к вашей учетной записи.
- Вернитесь в GitHub Desktop, нажмите кнопку "Готово". Это добавит имя и электронную почту из учетной записи GitHub в Git.
Создание локального репозитория
Теперь вы можете выполнить первые шаги в Git, создав репозиторий****. Думайте о репозитории как папке проекта, которая отслеживает изменения и сохраняет журнал. Сначала мы создадим локальный** репозиторий**:
-
В GitHub Desktopнажмите кнопку "Создать репозиторий" на локальном диске.
-
Присвойте репозиторию
learning-git
имя. -
Выберите инициализировать этот репозиторий с помощью README , чтобы автоматически создать пустой
README.md
файл.Tip
Стандартная практика включения
README.md
файла, также известного как README, в проекты. READMEs обычно содержат сведения, которые помогают другим пользователям понять, настроить и запустить проект. -
Щелкните Создать репозиторий.
Создание удаленный репозиторий
Локальный репозиторий, который вы только что создали на компьютере. Теперь создадим удаленный** репозиторий **для того же проекта, который будет размещен на GitHub. Связывание удаленный репозиторий упрощает совместную работу и резервное копирование работы.
- В GitHub Desktopнажмите кнопку "Опубликовать репозиторий".
- В появившемся всплывающем окне нажмите кнопку "Опубликовать репозиторий " еще раз.
- Чтобы просмотреть удаленный репозиторий, щелкните "Просмотреть" GitHub.
Настройка пространства для внесения изменений
Теперь, когда вы создали репозиторий, поговорим о ветвях. Ветви по сути копируют проект, где можно протестировать изменения, не рискуя стабильностью существующей работы.
Репозитории автоматически создаются с main
помощью ветви, которую можно рассматривать как стабильную, основную версию проекта. Например, в репозитории для веб-сайта main
филиал соответствует сайту, который могут видеть посетители.
При создании новой ветви вы создаете безопасное пространство для работы с новой функцией, не затрагивая основную версию. Вы и ваши сотрудники могут использовать разные ветви для одновременной работы над несколькими функциями.
Создадим ветвь для работы с изменениями в нашем репозитории:
- В меню GitHub Desktopвыберите раскрывающееся меню "git-branch" Current Branch ( Текущая ветвь ) и нажмите кнопку "Создать ветвь".
- Назовите новую ветвь, а затем нажмите кнопку "Создать ветвь".
readme-updates
Сохранение моментальных снимков проекта
Чтобы сохранить ход выполнения в ветви, сделайте фиксацию****. Фиксация — это моментальный снимок проекта в определенный момент времени. Вы уже сделали первую фиксацию: при инициализации проекта с помощью README GitHub Desktop автоматически создали начальную фиксацию для добавления README.md
файла.
Каждый раз, когда вы завершите фрагмент работы, которую вы хотите сохранить, необходимо сделать фиксацию. После этого вы всегда можете вернуться к этому моменту времени, независимо от того, сколько изменений вы вносите в будущем.
-
В GitHub Desktopнажмите кнопку "Открыть" в Visual Studio Code.
-
В VS Codeвставьте следующий текст
README.md
и сохраните изменения:Markdown Hello, World! This is a demo project for learning how to use Git.
Hello, World! This is a demo project for learning how to use Git.
-
В GitHub Desktopвы увидите обновления, которые вы только что сделали в README. В левом нижнем углу рядом с изображением профиля GitHub в текстовом поле введите "Update README". Это называется сообщением **** фиксации и помогает отслеживать изменения, внесенные в каждую фиксацию.
-
Чтобы сделать фиксацию, нажмите кнопку "Зафиксировать" для чтения обновлений.
Внесение изменений в основную ветвь
Когда вы удовлетворены изменениями, внесенными в ветвь, вы можете опубликовать ветвь в удаленный репозиторий и создать запрос на вытягивание. Запросы на вытягивание позволяют просматривать набор предлагаемых изменений, а затем объединять их из одной ветви в другую. В нашем случае мы создадим запрос на вытягивание, который приводит изменения, внесенные в readme-updates
исходную ветвь, main
.
-
Нажмите кнопку "Опубликовать ветвь", чтобы отправить
readme-updates
ветвь с изменениями в удаленный репозиторий. -
Чтобы просмотреть предложенные изменения, нажмите кнопку "Предварительный просмотр запроса на вытягивание".
-
Щелкните Создать запрос на вытягивание.
-
В появившемся окне GitHub измените название запроса на вытягивание на "Добавить сообщение в README", а затем напишите краткое описание изменений в поле комментария.
-
Нажмите кнопку "Создать запрос на вытягивание".
-
Чтобы перенести изменения в
main
ветвь, в нижней части страницы нажмите кнопку "Объединить запрос на вытягивание".Note
Когда вы работаете над проектом с другими разработчиками, это стандартная практика для кого-то другого, чтобы просмотреть запрос на вытягивание, прежде чем он объединен.
-
В нижней части страницы нажмите кнопку "Удалить ветвь". Удаление ветвей, которые были объединены в
main
репозиторий, помогает обеспечить чистоту и простоту навигации в репозитории.
Подготовка к внесению дополнительных изменений
Поздравляем с объединением первого запроса на вытягивание! Теперь, когда вы успешно ввели изменения в main
ветвь, необходимо выполнить несколько шагов, чтобы подготовиться к следующему раунду изменений:
-
В GitHub Desktop, если вы не используете ветвь
main
, выберите раскрывающееся меню "git-branch" aria-hidden="true" %} Current Branch , а затем щелкните main.Прежде чем создавать новую ветвь, следует почти всегда переключаться на
main
ветвь, так как новые ветви создаются как копии выбранной ветви. -
Чтобы проверить, были ли внесенные изменения в удаленную
main
ветвь, щелкните "Получить источник". -
Наконец, чтобы обновить локальную
main
ветвь с изменениями в удаленнойmain
ветви, щелкните "Вытягивание источника".
Теперь у вас есть все навыки, необходимые для настройки и использования Git в проекте!
Погружение в Git в командной строке
GitHub Desktop предназначен для решения повседневных потребностей Git. При росте в качестве разработчика, скорее всего, вам придется столкнуться с некоторыми необычными ситуациями, когда требуется больше контроля над операцией Git, или вам нужно использовать более сложные команды. В этих экземплярах необходимо переключиться на использование написанных команд Git в командной строке.
Настройка командной строки
Прежде чем приступить к работе с командной строкой, необходимо настроить несколько средств.
-
В GitHub Desktopнажмите клавиши CTRL+`, чтобы открыть проект в командной строке.
-
Если вы используете Windows, установите Git. Для macOS и Linux по умолчанию устанавливается Git.
-
Установите GitHub CLI, что позволяет быстро выполнять действия{ % переменных данных.product.github %}, связанные с командной строкой.
-
Чтобы выполнить проверку подлинности в GitHub из GitHub CLI, выполните следующую команду:
Shell gh auth login
gh auth login
Выберите проверку подлинности с помощью GitHub.com, а затем следуйте инструкциям на экране.
-
Установите GitHub Copilot in the CLI, мощное расширение для GitHub CLI, которое помогает найти и понять команды, выполнив следующую команду:
Shell gh extension install github/gh-copilot
gh extension install github/gh-copilot
Экспериментирование с сложными командами
Теперь, когда вы настроили, давайте узнаем, как найти и понять команды, которые могут потребоваться в будущем. Например, предположим, что вы видели кого-то онлайн упоминания git blame
, но вы не знаете, что это делает. Попробуйте попросить Copilot объяснить это с помощью следующей команды:
gh copilot explain "git blame"
gh copilot explain "git blame"
Copilot сообщает нам, что git blame
предоставляет подробный журнал файла, показывающий автора и фиксацию, которая в последний раз изменила каждую строку в файле. Попробуйте выполнить следующую команду:
git blame README.md
git blame README.md
Это отличный инструмент, но, как вы можете себе представить, вина за файл может получить очень долго. Предположим, что вы заинтересованы только в последнем обновлении в определенной строке в файле. Вы можете попросить Copilot создать правильную команду:
gh copilot suggest "Show me the blame for line 1 of README.md"
gh copilot suggest "Show me the blame for line 1 of README.md"
Когда Copilot запрашивает нужную команду, используйте клавиши со стрелками для выбора команды Git, а затем нажмите клавишу ВВОД. Затем Copilot предложит следующую команду:
git blame -L 1,1 README.md
git blame -L 1,1 README.md
Используйте клавиши со стрелками, чтобы выбрать команду Execute, а затем нажмите клавишу ВВОД. Вы увидите автора и фиксацию последней измененной строки 1 README.md
.
Просмотр и дальнейшие действия
В этой статье мы рассмотрели основы Git с GitHub Desktop, изучая важные термины, такие как:
- Репозиторий: папка, которая сохраняет все изменения, внесенные в файлы в проекте.
- Фиксация: моментальный снимок проекта в определенный момент времени.
- Ветвь: копия проекта, в которой можно работать над набором изменений.
- Запрос на вытягивание: запрос на слияние изменений из одной ветви в другую.
Мы также говорили о выполнении более сложных операций Git в командной строке. Мы пытались gh copilot explain
изучить и gh copilot suggest
найти новые команды и функциональные возможности.
Теперь попробуйте применить то, что вы узнали в своей работе. Добавьте Git в существующий проект с GitHub Desktop, нажав клавиши CTRL+O (Windows/Linux) или Command+O (Mac) и испытав преимущества управления версиями самостоятельно!