# Управление ветвями в GitHub Desktop

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

## Сведения об управлении ветвями

С помощью ветвей можно безопасно экспериментировать с изменениями в проекте. Ветви изолируют разработку от других ветвей в репозитории. Например, можно использовать ветвь для разработки новой функции или исправления ошибки.

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

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

Добившись удовлетворительного результата, вы можете создать запрос на вытягивание, чтобы объединить изменения в текущей ветви с другой ветвью. Дополнительные сведения см. в разделе \[AUTOTITLE и [Создание проблемы или запрос на вытягивание из GitHub Desktop](/ru/desktop/working-with-your-remote-repository-on-github-or-github-enterprise/creating-an-issue-or-pull-request-from-github-desktop)]\(/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests).

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

Администраторы репозитория могут включать защиты в ветви. Если вы работаете с защищенной ветвью, то не сможете удалить или принудительно отправить ее в ветвь. Администраторы репозитория могут включить другие параметры защищенной ветви для применения определенных рабочих процессов, прежде чем можно будет выполнить слияние для ветви. Дополнительные сведения см. в разделе [Сведения о защищенных ветвях](/ru/enterprise-server@3.22/repositories/configuring-branches-and-merges-in-your-repository/managing-protected-branches/about-protected-branches).

Администраторы репозитория также могут включать наборы правил. Наборы правил можно использовать для того, чтобы требовать определенные имена ветвей при создании новой ветви или разрешать только пользователям с разрешениями обходить публикацию новой ветви в удаленный репозиторий. GitHub Desktop отобразит предупреждение и предотвратит создание ветви, если ветвь не соответствует наборам правил. Дополнительные сведения см. в разделе [Сведения о наборе правил](/ru/enterprise-cloud@latest/repositories/configuring-branches-and-merges-in-your-repository/managing-rulesets/about-rulesets).

## Создание ветви

> \[!TIP]
> Первая созданная новая ветвь будет основана на ветвь по умолчанию. Если у вас несколько ветвей, ветвь можно создать на основе текущей извлеченной ветви или ветви по умолчанию.

1. В верхней части приложения щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch** , а затем в списке ветвей щелкните ветвь, на которой вы хотите создать ветвь.

   ![Снимок экрана: раскрывающееся представление Current Branch. В разделе "Последние ветви", ветвь с именем my-feature, выделена оранжевым контуром.](/assets/images/help/desktop/select-branch-from-dropdown.png)

2. Щелкните **Новая ветвь**.

   ![Снимок экрана: раскрывающееся представление Current Branch. Рядом с полем "Фильтр" кнопка, помеченная как "Новая ветвь", описывается оранжевым цветом.](/assets/images/help/desktop/new-branch-button-mac.png)

3. В окне "Создать ветвь" в поле "Имя" введите имя новой ветви.

4. В разделе "Создать ветвь на основе..." выберите базовая ветвь для новой ветви.

5. Щелкните **Создать ветвь**.

## Создание ветви из предыдущей фиксации

1. На левой боковой панели нажмите кнопку **"Журнал**".

   ![Снимок экрана: вкладка "Журнал" на боковой панели. Над списком фиксаций кнопка вкладки с надписью "Журнал" выделена оранжевым контуром.](/assets/images/help/desktop/history-tab-in-commit-sidebar.png)

2. Щелкните правой кнопкой мыши фиксацию, из которой нужно создать ветвь, и выберите **Create Branch from Commit** (Создать ветвь из фиксации).

   ![Снимок экрана: список фиксаций на вкладке "Журнал". Рядом с фиксацией курсор наведите указатель мыши на параметр Create Branch from Commit (Создать ветвь из фиксации) в контекстном меню.](/assets/images/help/desktop/create-branch-from-commit-context-menu.png)

3. В окне "Создать ветвь" в поле "Имя" введите имя новой ветви.

4. Щелкните **Создать ветвь**.

## Публикация ветви

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

1. На панели репозитория щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch**, а затем щелкните ветвь, которую требуется опубликовать.

![Снимок экрана: раскрывающееся представление Current Branch. В разделе "Последние ветви", ветвь с именем my-feature, выделена оранжевым контуром.](/assets/images/help/desktop/select-branch-from-dropdown.png)

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

![Снимок экрана: панель репозитория. В правой части кнопка с надписью "Опубликовать ветвь" выделена оранжевым контуром.](/assets/images/help/desktop/publish-branch-button.png)

## Переключение между ветвями

Вы можете просматривать и выполнять фиксации в любой из ветвей репозитория. При наличии незафиксированных сохраненных изменений вам нужно решить, что с ними делать, прежде чем переключать ветви. Вы можете зафиксировать изменения в текущей ветви, спрятать изменения, чтобы временно сохранить их в текущей ветви, или перенести изменения в новую ветвь. Если вы хотите зафиксировать изменения перед переключением ветвей, см. раздел [Фиксация и проверка изменений в проекте в GitHub Desktop](/ru/desktop/making-changes-in-a-branch/committing-and-reviewing-changes-to-your-project-in-github-desktop).

> \[!TIP]
> Вы можете задать поведение по умолчанию для переключения ветвей в **параметрах** запроса. Дополнительные сведения см. в разделе [Настройка основных параметров в GitHub Desktop](/ru/desktop/configuring-and-customizing-github-desktop/configuring-basic-settings-in-github-desktop).

1. На панели репозитория щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch**, а затем щелкните ветвь, на которую вы хотите перейти.

![Снимок экрана: раскрывающееся представление Current Branch. В разделе "Последние ветви", ветвь с именем my-feature, выделена оранжевым контуром.](/assets/images/help/desktop/select-branch-from-dropdown.png)

1. Если вы сохранили, незафиксированные изменения в окне "Переключить ветвь" выберите **"Оставить изменения в CURRENT-BRANCH" или **"Перенести изменения в NEW-BRANCH****", а затем нажмите кнопку **"Переключить ветвь**".

## Удаление ветви

Вы не можете удалить ветвь, если в настоящее время она связана с открытым запросом на вытягивание. Отменить удаление ветви невозможно.

<div class="ghd-tool mac">

1. На панели репозитория щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch**, а затем щелкните ветвь, которую вы хотите удалить.
   ![Снимок экрана: раскрывающееся представление Current Branch. В разделе "Последние ветви", ветвь с именем my-feature, выделена оранжевым контуром.](/assets/images/help/desktop/select-branch-from-dropdown.png)
2. В строке меню щелкните **Ветвь**, а затем нажмите кнопку **Удалить**. Можно также нажать клавиши <kbd>SHIFT</kbd>+<kbd>COMMAND</kbd>+<kbd>D</kbd>.
   ![Снимок экрана: строка меню на Компьютере Mac. В раскрывающемся меню "Ветвь" курсор наведите указатель мыши на параметр "Удалить", выделенный синим цветом.](/assets/images/help/desktop/delete-branch-mac.png)

</div>

<div class="ghd-tool windows">

1. На панели репозитория щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-git-branch" aria-label="git-branch" role="img"><path d="M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z"></path></svg> Current Branch**, а затем щелкните ветвь, которую вы хотите удалить.
   ![Снимок экрана: раскрывающееся представление Current Branch. В разделе "Последние ветви", ветвь с именем my-feature, выделена оранжевым контуром.](/assets/images/help/desktop/select-branch-from-dropdown.png)
2. В строке меню щелкните **Ветвь**, а затем нажмите кнопку **Удалить**. Можно также нажать клавиши <kbd>CTRL</kbd>+<kbd>SHIFT</kbd>+<kbd>D</kbd>.
   ![Снимок экрана: строка меню "GitHub Desktop" в Windows. В раскрывающемся меню "Ветвь" параметр с надписью "Удалить" выделен оранжевым цветом.](/assets/images/help/desktop/delete-branch-win.png)

</div>

## Дополнительные материалы

* [Клонирование репозитория из GitHub в GitHub Desktop](/ru/desktop/adding-and-cloning-repositories/cloning-a-repository-from-github-to-github-desktop)
* [Глоссарий GitHub](/ru/enterprise-server@3.22/get-started/learning-about-github/github-glossary#branch) в глоссарии GitHub
* [Филиалы](/ru/enterprise-server@3.22/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches)
* [Ветви в оболочке в](https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell) документации по Git
* [Сохранение изменений в GitHub Desktop](/ru/desktop/making-changes-in-a-branch/stashing-changes-in-github-desktop)