Skip to main content

Использование системы управления версиями в codespace

После внесения изменений в файл в codespace можно быстро зафиксировать изменения и отправить обновление в удаленный репозиторий.

Сведения об управлении версиями в GitHub Codespaces

Можно выполнять все необходимые действия Git непосредственно в codespace. Например, можно получить изменения из удаленный репозиторий, переключить ветви, создать новую ветвь, зафиксировать и отправить изменения, а также создать запрос на вытягивание. Встроенный терминал в codespace можно использовать для ввода команд Git или щелкнуть значки и параметры меню, чтобы выполнить все наиболее распространенные задачи Git. В этом руководстве объясняется, как использовать графический пользовательский интерфейс для управления версиями.

Дополнительные сведения о поддержке Git в Visual Studio Codeсм. в разделе "Использование управления версиями" в VS Code в документации Visual Studio Code.

Управление версиями в веб-клиенте Visual Studio Code использует тот же рабочий процесс, что и классическое приложение Visual Studio Code. Дополнительные сведения см. в разделе "Использование управления версиями" в документации VS Code в документации по Visual Studio Code.

Типичным рабочим процессом обновления файла с помощью GitHub Codespaces будет следующее:

  • Из ветви по умолчанию репозитория на GitHub создайте codespace. См . раздел AUTOTITLE.
  • В codespace создайте новую ветвь для работы.
  • Внесите необходимые изменения и сохраните их.
  • Зафиксируйте изменения.
  • Создайте запрос на вытягивание.

Примечание.

По умолчанию GitHub Codespaces использует протокол HTTPS для передачи данных в удаленный репозиторий и выполняет проверку подлинности с GITHUB_TOKEN настроенным доступом на чтение и запись в репозиторий, из которого создается пространство кода. Если у вас возникли проблемы с проверкой подлинности, см . раздел AUTOTITLE.

О автоматическом вилке

Чтобы создать пространство кода для репозитория, для которого у вас есть доступ только для чтения, необходимо иметь разрешение на вилку репозитория.

Перед созданием пространства кода не нужно вилировать репозиторий. Например, можно создать пространство кода из репозитория, чтобы просмотреть проект и внести экспериментальные изменения, а затем удалить пространство кода, если он больше не нужен.

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

Если вы зафиксируйте фиксацию из командной строки, появится запрос на то, хотите ли вы продолжить связывание пространства кода с новым или существующим вилкой. Введите y , чтобы продолжить. Если вы фиксируете изменения из представления системы управления версиями в VS Code, пространство кода автоматически связывается с вилкой без запроса.

Примечание.

  • Если удалить репозиторий вилки, все пространства кода, связанные с вилкой, удаляются, даже если вы изначально создали их из вышестоящего репозитория.
  • Если выполнить фиксацию из командной строки и отказаться от нового вилки, введя nввод, необходимо отправить изменения из командной строки вместо VS Code. Если вы используете представление системы управления версиями, VS Code по-прежнему попытается создать вилку для принудительной отправки.

Когда GitHub Codespaces создает вилку или связывает пространство кода с существующим вилкой, происходит следующее.

  • Маркер доступа, связанный с пространством кода, обновляется для включения read и write разрешения на вилку в дополнение к read разрешению вышестоящего репозитория.
  • В параметрах Git вышестоящий репозиторий переназначается в имяupstream, а вилка добавляется в качестве новой удаленный репозиторий под именемorigin.

По умолчанию команды управления версиями, к которым вы обращаетесь из пользовательского интерфейса редактора, например кнопку "Изменения синхронизации" в VS Code, нацеливаете на вилку. Если вы работаете из командной строки, можно использовать origin для ссылки на вилку и upstream обратиться к вышестоящему репозиторию. Например, вы можете получить изменения из вышестоящего репозитория, чтобы убедиться, что пространство кода обновлено с последними изменениями проекта.

git fetch upstream

При внесении некоторых изменений их можно отправить в ветвь компонента вилки.

git push origin my-feature-branch

Дополнительные сведения см. в разделе Сведения о вилках.

Публикация пространства кода, созданного на основе шаблона

При создании пространства кода из репозитория шаблонов или шаблона на странице "Пространства кода" работа, которую вы делаете, не будет храниться в репозитории на GitHub до публикации пространства кода. Дополнительные сведения см. в разделе Создание пространства кода на основе шаблона.

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

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. Чтобы выполнить изменения, щелкните + рядом с файлом, добавленным или измененным, или рядом с изменениями , если вы изменили несколько файлов и хотите выполнить их все.

    Снимок экрана: боковая панель "Управление версиями" с промежуточной кнопкой (знак плюса) справа от "Изменения", выделенная темно-оранжевым контуром.

    Примечание.

    Если вы начинаете с пустого шаблона GitHub, вы не увидите список изменений, если вы еще не инициализировали каталог в качестве репозитория Git. Чтобы опубликовать пространства кода, созданные из пустого шаблона, нажмите кнопку "Опубликовать" в GitHub в представлении "Управление версиями", а затем перейдите к шагу 5.

  3. Чтобы зафиксировать промежуточные изменения, введите сообщение фиксации, описывающее внесенные изменения, а затем нажмите кнопку "Зафиксировать".

    Снимок экрана: боковая панель "Управление версиями" с сообщением фиксации и под ней кнопка "Фиксация" выделена темно-оранжевым контуром.

  4. Нажмите кнопку "Опубликовать ветвь".

    Снимок экрана: боковая панель "Управление версиями" с кнопкой "Опубликовать ветвь".

  5. В раскрывающемся списке "Имя репозитория" введите имя нового репозитория, а затем выберите "Опубликовать" в GitHub частный репозиторий или опубликовать в GitHub общедоступный репозиторий.

    Снимок экрана: раскрывающийся список имени репозитория в VS Code. Показаны два варианта публикации в частном или общедоступный репозиторий.

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

  6. При необходимости в всплывающем окне, который отображается в правом нижнем углу редактора, щелкните "Открыть" GitHub для просмотра нового репозитория на GitHub.

    Снимок экрана: сообщение подтверждения для успешно опубликованного репозитория с кнопкой "Открыть на GitHub".

Создание или переключение ветвей

  1. Если текущая ветвь не отображается в строке состояния, в нижней части кодового пространства щелкните строку состояния правой кнопкой мыши и выберите Управление версиями.

  2. Выберите имя ветви в строке состояния.

    Снимок экрана: имя ветви, отображаемое в строке состояния VS Code.

  3. В раскрывающемся списке щелкните ветвь, которую вы хотите переключиться, или введите имя новой ветви и нажмите кнопку "Создать ветвь".

    Снимок экрана: раскрывающийся список для создания новой ветви в VS Code.

Совет

Если кто-то недавно изменил файл на удаленный репозиторий, в ветвь, на который вы переключились, вы можете не увидеть эти изменения, пока не вытащите изменения в пространство кода.

Фиксация изменений

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. Чтобы выполнить изменения, щелкните рядом с измененным файлом или рядом с изменениями , если вы изменили несколько файлов, и вы хотите выполнить их все.

    Снимок экрана: боковая панель "Управление версиями" с промежуточной кнопкой (знак плюса) справа от "Изменения", выделенная темно-оранжевым контуром.

  3. В текстовом поле введите сообщение фиксации, описывающее внесенные изменения.

    Снимок экрана боковой панели "Управление версиями" с сообщением фиксации, введенным в текстовое поле над кнопкой "Фиксация".

  4. Щелкните стрелку вниз в правой части кнопки "Фиксация " и выберите "Фиксация" и "Отправить " в раскрывающемся меню.

    Снимок экрана: раскрывающийся список для кнопки "Фиксация". Параметр "Фиксация и отправка" выделен с темно-оранжевым контуром.

Вытягивание изменений из удаленного репозитория

Можно извлекать изменения из удаленного репозитория в codespace в любое время.

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. В верхней части боковой панели щелкните .

    Снимок экрана: боковая панель "Управление версиями". Кнопка с многоточием (три точки) выделена темно-оранжевым контуром.

  3. В раскрывающемся меню нажмите кнопку "Вытягивание".

Если конфигурация контейнера разработки была изменена с момента создания codespace, вы можете применить изменения, перестроив контейнер для codespace. Дополнительные сведения см. в разделе Основные сведения о контейнерах разработки.

Настройка codespace для автоматического получения новых изменений

Можно настроить codespace, чтобы автоматически получать сведения о любых новых фиксациях, внесенных в удаленный репозиторий. Это позволяет узнать, устарела ли локальная копия репозитория, и в этом случае можно извлечь новые изменения.

Если операция получения обнаруживает новые изменения в удаленном репозитории, вы увидите количество новых фиксаций в строке состояния. Затем можно извлечь изменения в локальную копию.

  1. Нажмите кнопку Управление в нижней части панели действий.

    Снимок экрана: нижняя часть панели действий. Кнопка "Управление" (помеченная символом шестеренки) выделена темно-оранжевым контуром.

  2. В меню выберите пункт Параметры.

  3. На странице параметров выполните поиск: autofetch.

    Снимок экрана: вкладка "Параметры". Текст поиска "autofetch" выделен темным оранжевым контуром.

  4. Чтобы получить сведения об обновлениях для всех удаленных параметров, зарегистрированных для текущего репозитория, установите Git: Autofetchна all.

    Снимок экрана: параметр автозабора Git, в котором задано значение all.

  5. Если вы хотите изменить количество секунд между каждой автоматической выборкой, измените значение Git: Autofetch Period.

Создание запроса на вытягивание

  1. После фиксации изменений в локальной копии репозитория щелкните значок запроса на вытягивание в верхней части боковой панели управления версиями.

    Снимок экрана: верхняя часть боковой панели "Управление версиями". Значок запроса на вытягивание выделен темно-оранжевым контуром.

  2. Убедитесь в том, что локальная ветвь и репозиторий, из которых выполняется слияние, а также удаленная ветвь и репозиторий, с которыми выполняется слияние, выбраны правильно. Затем задайте для запроса на вытягивание название и описание.

    Снимок экрана: боковая панель "GitHub Запрос на вытягивание" с формой для создания запроса на вытягивание, включая поля Title и Description.

  3. Нажмите кнопку Создать.

Отправка изменений в удаленный репозиторий

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

  1. В верхней части боковой панели щелкните .

    Снимок экрана: боковая панель "Управление версиями". Кнопка с многоточием (три точки) выделена темно-оранжевым контуром.

  2. В раскрывающемся меню нажмите кнопку "Отправить".

Публикация пространства кода, созданного на основе шаблона

При создании пространства кода из репозитория шаблонов или шаблона на странице "Пространства кода" работа, которую вы делаете, не будет храниться в репозитории на GitHub до публикации пространства кода. Дополнительные сведения см. в разделе Создание пространства кода на основе шаблона.

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

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. Чтобы выполнить изменения, щелкните + рядом с файлом, добавленным или измененным, или рядом с изменениями , если вы изменили несколько файлов и хотите выполнить их все.

    Снимок экрана: боковая панель "Управление версиями" с промежуточной кнопкой (знак плюса) справа от "Изменения", выделенная темно-оранжевым контуром.

    Примечание.

    Если вы начинаете с пустого шаблона GitHub, вы не увидите список изменений, если вы еще не инициализировали каталог в качестве репозитория Git. Чтобы опубликовать пространства кода, созданные из пустого шаблона, нажмите кнопку "Опубликовать" в GitHub в представлении "Управление версиями", а затем перейдите к шагу 5.

  3. Чтобы зафиксировать промежуточные изменения, введите сообщение фиксации, описывающее внесенные изменения, а затем нажмите кнопку "Зафиксировать".

    Снимок экрана: боковая панель "Управление версиями" с сообщением фиксации и под ней кнопка "Фиксация" выделена темно-оранжевым контуром.

  4. Нажмите кнопку "Опубликовать ветвь".

    Снимок экрана: боковая панель "Управление версиями" с кнопкой "Опубликовать ветвь".

  5. В раскрывающемся списке "Имя репозитория" введите имя нового репозитория, а затем выберите "Опубликовать" в GitHub частный репозиторий или опубликовать в GitHub общедоступный репозиторий.

    Снимок экрана: раскрывающийся список имени репозитория в VS Code. Показаны два варианта публикации в частном или общедоступный репозиторий.

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

  6. При необходимости в всплывающем окне, который отображается в правом нижнем углу редактора, щелкните "Открыть" GitHub для просмотра нового репозитория на GitHub.

    Снимок экрана: сообщение подтверждения для успешно опубликованного репозитория с кнопкой "Открыть на GitHub".

Создание или переключение ветвей

  1. Если текущая ветвь не отображается в строке состояния, в нижней части кодового пространства щелкните строку состояния правой кнопкой мыши и выберите Управление версиями.

  2. Выберите имя ветви в строке состояния.

    Снимок экрана: имя ветви, отображаемое в строке состояния VS Code.

  3. В раскрывающемся списке щелкните ветвь, которую вы хотите переключиться, или введите имя новой ветви и нажмите кнопку "Создать ветвь".

    Снимок экрана: раскрывающийся список для создания новой ветви в VS Code.

Совет

Если кто-то недавно изменил файл на удаленный репозиторий, в ветвь, на который вы переключились, вы можете не увидеть эти изменения, пока не вытащите изменения в пространство кода.

Фиксация изменений

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. Чтобы выполнить изменения, щелкните рядом с измененным файлом или рядом с изменениями , если вы изменили несколько файлов, и вы хотите выполнить их все.

    Снимок экрана: боковая панель "Управление версиями" с промежуточной кнопкой (знак плюса) справа от "Изменения", выделенная темно-оранжевым контуром.

  3. В текстовом поле введите сообщение фиксации, описывающее внесенные изменения.

    Снимок экрана боковой панели "Управление версиями" с сообщением фиксации, введенным в текстовое поле над кнопкой "Фиксация".

  4. Щелкните стрелку вниз в правой части кнопки "Фиксация " и выберите "Фиксация" и "Отправить " в раскрывающемся меню.

    Снимок экрана: раскрывающийся список для кнопки "Фиксация". Параметр "Фиксация и отправка" выделен с темно-оранжевым контуром.

Вытягивание изменений из удаленного репозитория

Можно извлекать изменения из удаленного репозитория в codespace в любое время.

  1. На панели действий щелкните представление Система управления версиями.

    Снимок экрана: панель действий VS Code с выделенной кнопкой управления версиями с оранжевым контуром.

  2. В верхней части боковой панели щелкните .

    Снимок экрана: боковая панель "Управление версиями". Кнопка с многоточием (три точки) выделена темно-оранжевым контуром.

  3. В раскрывающемся меню нажмите кнопку "Вытягивание".

Если конфигурация контейнера разработки была изменена с момента создания codespace, вы можете применить изменения, перестроив контейнер для codespace. Дополнительные сведения см. в разделе Основные сведения о контейнерах разработки.

Настройка codespace для автоматического получения новых изменений

Можно настроить codespace, чтобы автоматически получать сведения о любых новых фиксациях, внесенных в удаленный репозиторий. Это позволяет узнать, устарела ли локальная копия репозитория, и в этом случае можно извлечь новые изменения.

Если операция получения обнаруживает новые изменения в удаленном репозитории, вы увидите количество новых фиксаций в строке состояния. Затем можно извлечь изменения в локальную копию.

  1. Нажмите кнопку Управление в нижней части панели действий.

    Снимок экрана: нижняя часть панели действий. Кнопка "Управление" (помеченная символом шестеренки) выделена темно-оранжевым контуром.

  2. В меню выберите пункт Параметры.

  3. На странице параметров выполните поиск: autofetch.

    Снимок экрана: вкладка "Параметры". Текст поиска "autofetch" выделен темным оранжевым контуром.

  4. Чтобы получить сведения об обновлениях для всех удаленных параметров, зарегистрированных для текущего репозитория, установите Git: Autofetchна all.

    Снимок экрана: параметр автозабора Git, в котором задано значение all.

  5. Если вы хотите изменить количество секунд между каждой автоматической выборкой, измените значение Git: Autofetch Period.

Создание запроса на вытягивание

  1. После фиксации изменений в локальной копии репозитория щелкните значок запроса на вытягивание в верхней части боковой панели управления версиями.

    Снимок экрана: верхняя часть боковой панели "Управление версиями". Значок запроса на вытягивание выделен темно-оранжевым контуром.

  2. Убедитесь в том, что локальная ветвь и репозиторий, из которых выполняется слияние, а также удаленная ветвь и репозиторий, с которыми выполняется слияние, выбраны правильно. Затем задайте для запроса на вытягивание название и описание.

    Снимок экрана: боковая панель "GitHub Запрос на вытягивание" с формой для создания запроса на вытягивание, включая поля Title и Description.

  3. Нажмите кнопку Создать.

Отправка изменений в удаленный репозиторий

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

  1. В верхней части боковой панели щелкните .

    Снимок экрана: боковая панель "Управление версиями". Кнопка с многоточием (три точки) выделена темно-оранжевым контуром.

  2. В раскрывающемся меню нажмите кнопку "Отправить".