Удаление отсоединённых ветвей
У вас есть репозиторий Git с несколькими отсоединёнными ветвями, которые вы больше не нуждаетесь. Эти ветви засоряют ваш репозиторий и затрудняют его управление. Вы хотите удалить все отсоединённые ветви, чтобы очистить репозиторий.
Для завершения этого лабы вы будете использовать репозиторий Git git-playground
из вашего аккаунта на GitHub, который является форком от https://github.com/labex-labs/git-playground.git
. Не проверяйте пункт "Копировать только ветку master".
- Клонируйте репозиторий, перейдите в директорию и настройте идентификацию:
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"
- Поскольку в удаленном репозитории есть ветка
feature-branch
, переключитесь на feature-branch
, что приведет к тому, что локальная ветка feature-branch
будет отслеживать ветку feature-branch
удаленного репозитория, и удалите ветку feature-branch
в удаленном репозитории:
git checkout feature-branch
git push origin --delete feature-branch
- Просмотрите связь между локальными ветвями и ветвями удаленного репозитория, которые они отслеживают:
git branch -vv
- Переключитесь обратно на ветку
master
:
git checkout master
- Удалите все отсоединённые ветви из локального репозитория:
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D
- Проверьте, были ли удалены отсоединённые ветви:
git branch
Вывод должен показывать только те ветви, которые связаны с какой-либо конкретной ветвью:
* master d22f46b [origin/master] Added file2.txt