Примененные методы GitHub Copilot

Завершено

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

В этом уроке давайте обсудим, как Copilot может помочь вам с существующими проектами и помочь вам с более сложными задачами.

Расширенные задачи с помощью GitHub Copilot

Обычно инженер работает над существующим проектом. При исправлении кода или реализации функций необходимо написать документацию и тесты и работать с командами терминала. Давайте рассмотрим несколько способов, которыми вы можете достичь этого, используя GitHub Copilot.

Неявные подсказки

Хотя вы можете быть конкретным в запросах на получение руководства по GitHub Copilot, вы можете воспользоваться преимуществами функций, которые неявно предоставляют предварительно подготовленный запрос, чтобы получить хороший ответ.

Например, если вы работаете над проектом Python, и у вас есть файл, открытый со следующим кодом, который содержит ошибку в нем:

with open("file.txt", "r") as file:
    # Read the file and print the content
    contents = file.read

Выбрав код и нажав клавиши CTRL+i в Windows или Command+i на Mac, вы можете попросить GitHub Copilot исправить код с помощью встроенного чата и /fix команды косой черты.

Если вы вводите только /fix, вы можете получить ответ от GitHub Copilot, аналогичный этому предложению: "Чтобы исправить код, я добавлю круглые скобки после file.read, чтобы вызвать метод чтения и исправить опечатку в имени метода".

Команды косой черты можно использовать как в текстовом чате, так и в пользовательском интерфейсе чата. /fix Помимо команды, ниже приведены некоторые из наиболее полезных слэш-команд, которые можно использовать в чате Copilot:

  • /doc: добавляет примечания к указанному или выбранному коду.
  • /explain: получает пояснения о коде.
  • /generate: создает код для ответа на указанный вопрос.
  • /help: Получает справку по использованию чата Copilot.
  • /optimize: анализирует и улучшает среду выполнения выбранного кода.
  • /tests: создает модульные тесты для выбранного кода.

Использование команд с косой чертой (slash-команд) позволяет упростить взаимодействие с GitHub Copilot и помогает получить более качественные ответы, избавляя от необходимости писать длинные запросы.

Объединение таких функций, как слэш-команды и встроенный чат, позволяет выбрать наиболее подходящий способ работы для вас и используемого вами кода.

Выборочный контекст

GitHub Copilot можно настроить для предоставления предложений в зависимости от контекста, над которым вы работаете. Например, можно попросить GitHub Copilot предоставить предложения на основе всей рабочей области или выходных данных терминала.

GitHub Copilot может дать точные предложения для проекта, не требуя открытия многих файлов. Представьте, что вам нужно упаковать проект с помощью Dockerfile. Dockerfile — это специальный файл, который должен иметь конкретные инструкции для упаковки проекта. Вы можете использовать чат GitHub Copilot, чтобы узнать, как помочь вам. Например, откройте GitHub Copilot Chat и введите следующую команду:

I need to create a Dockerfile for this project, can you generate one that will help me package it?

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

Как всегда, если предложения не совсем соответствуют вашим ожиданиям, вы можете переформулировать подсказку и быть более конкретным. Например, можно попросить GitHub Copilot использовать определенный шаг при создании Dockerfile:

Help me create a Dockerfile to package this project but make sure you are using a Virtual Environment for Python.

Copilot также может предоставлять контекстные предложения в зависимости от вашей текущей деятельности. Например, вы можете использовать агент @terminal для получения справки по ошибкам или командам, что позволяет Copilot давать рекомендации на основе выходных данных терминала.

Пример. @terminal Как исправить сообщение об ошибке, которое я вижу?

Если вы зависли или не получаете нужные результаты, вы можете переопределять запрос или начать писать код для Copilot для автозаполнения.

Примечание.

По умолчанию GitHub Copilot использует открытые файлы в текстовом редакторе в качестве дополнительного контекста.