Удаление отсоединённых ветвей

GitGitBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

При работе с Git часто приходится создавать и переключаться на отсоединённые ветви. Эти ветви не связаны с какой-либо конкретной ветвью и обычно используются для тестирования или экспериментирования. Однако с течением времени эти ветви могут накапливаться и засорять ваш репозиторий. В этом лабе вы научитесь удалять все отсоединённые ветви в вашем репозитории Git.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/BranchManagementGroup(["Branch Management"]) git/BranchManagementGroup -.-> git/branch("Handle Branches") subgraph Lab Skills git/branch -.-> lab-12721{{"Удаление отсоединённых ветвей"}} end

Удаление отсоединённых ветвей

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

Для завершения этого лабы вы будете использовать репозиторий Git git-playground из вашего аккаунта на GitHub, который является форком от https://github.com/labex-labs/git-playground.git. Не проверяйте пункт "Копировать только ветку master".

  1. Клонируйте репозиторий, перейдите в директорию и настройте идентификацию:
git clone https://github.com/your-username/git-playground.git
cd git-playground
git config --global user.name "your-username"
git config --global user.email "your-email"
  1. Поскольку в удаленном репозитории есть ветка feature-branch, переключитесь на feature-branch, что приведет к тому, что локальная ветка feature-branch будет отслеживать ветку feature-branch удаленного репозитория, и удалите ветку feature-branch в удаленном репозитории:
git checkout feature-branch
git push origin --delete feature-branch
  1. Просмотрите связь между локальными ветвями и ветвями удаленного репозитория, которые они отслеживают:
git branch -vv
  1. Переключитесь обратно на ветку master:
git checkout master
  1. Удалите все отсоединённые ветви из локального репозитория:
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D
  1. Проверьте, были ли удалены отсоединённые ветви:
git branch

Вывод должен показывать только те ветви, которые связаны с какой-либо конкретной ветвью:

* master d22f46b [origin/master] Added file2.txt

Резюме

Удаление отсоединённых ветвей — важный шаг для организации и простого управления вашим репозиторием Git. С помощью команды git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D вы можете легко удалить все отсоединённые ветви из локального репозитория. Это поможет вам поддерживать чистоту репозитория и сделать его более удобным для работы в будущем.