Ответы:
Если ветки только локальные, вы можете использовать -d, если ветка была объединена, например
git branch -d branch-name
Если ветка содержит код, который вы никогда не планируете объединять, используйте вместо этого -D .
Если ветка находится в восходящем репо (на Bitbucket), вы можете удалить удаленную ссылку,
git push origin :branch-name
Кроме того, если вы находитесь на веб-сайте Bitbucket, вы можете удалить отправленные вами ветки, перейдя на вкладку « Ветви функций » в разделе « Коммиты» на сайте. Там вы найдете значок с многоточием. Щелкните по нему, затем выберите Удалить ветку . Только убедитесь, что вы хотите сбросить туда все изменения!
Для удаления ветки из Bitbucket,
В дополнение к ответу @Marcus теперь вы также можете удалить удаленную ветку с помощью:
git push [remote-name] --delete [branch-name]
в Bitbucket перейдите к веткам в левом меню.
Я мог удалить большую часть своих веток, но одна выглядела так, и я не мог ее удалить:
Оказалось, что кто-то сидел Branch permissions
под Settings
и оттуда без контроля Allow deleting this branch
. Надеюсь, это кому-то поможет.
Обновление : где находятся настройки из вопроса в комментарии. Войдите в репозиторий, который вы не хотите редактировать, чтобы получить меню. Вам могут потребоваться права администратора, чтобы изменить это.
Если вы используете среду разработки pycharm для разработки и уже добавили с ней Git. вы можете напрямую удалить удаленную ветку из pycharm. На панели инструментов VCS -> Git -> Ветви -> Выбрать ветку -> и Удалить . Он удалит его с удаленного сервера git.
Я написал этот небольшой скрипт, когда количество веток в моем репо перевалило за несколько сотен. Я не знал о других методах (с помощью CLI), поэтому решил автоматизировать их с помощью селена. Он просто открывает веб-сайт Bitbucket, переходит в «Филиалы», прокручивает страницу до конца и нажимает на каждое меню параметров ветки -> нажимает кнопку «Удалить» -> нажимает «Да». Его можно настроить, чтобы сохранить последние N (100 - по умолчанию) веток и пропустить ветки с определенными именами (master, develop - по умолчанию, может быть больше). Если это вам подходит, вы можете попробовать то же самое.
https://github.com/globad/remove-old-branches
Все, что вам нужно, это клонировать репозиторий, загрузить соответствующую версию Chrome-webdriver, ввести несколько констант, таких как URL-адрес, в ваш репозиторий и запустить скрипт.
Код достаточно прост для понимания. Если у вас есть вопросы, напишите комментарии / создайте проблему.
Попробуйте эту команду, она очистит все ветки, которые были объединены с develop
веткой.
for i in `git branch -r --merged origin/develop| grep origin | grep -v '>' \
| grep -v master | grep -v develop | sed -E "s|^ *origin/||g"`; \
do \
git push origin $i --delete; \
done
В Android Studio параметры в правом углу IDE:
Если вам нравится веселье, вы можете просто перейти на страницу со списком ваших веток (например, объединенных) и просто запустить в консоли javascript:
document.querySelectorAll('tr td div a:first-child').forEach(function(item) { fetch('https://bitbucket.org/snippets/new?owner=<yourprofilenick>', {'credentials': 'same-origin'}).then((response) => {return response.text()}).then(function(string) { return /'csrfmiddlewaretoken' value='(.*)'/g.exec(string)[1] }).then(function(csrf) { if (!~item.innerText.indexOf('/')) return;
fetch(`https://bitbucket.org/!api/2.0/repositories/<your_organization_path>/refs/branches/${item.innerText}`, {headers: {"x-csrftoken": csrf}, credentials: "same-origin", method: 'DELETE'}).then(() => console.log(`${item.innerText} DELETED!`)) }) })
<yourprofilenick>
на свой ник BitBucket<your_organization_path>
на путь вашей организацииСначала нам нужна страница с токеном CSRF в источнике страницы, поэтому я выбираю:
https://bitbucket.org/snippets/new?owner=<yourprofilenick>
Затем для каждой ветки (в списке веток) он получает токен CSRF и удаляет эту ветку.
Не забывайте предотвращать чувствительные ветки перед удалением в настройках репо.
Это НЕ удалит основную ветку.
Вы должны войти в систему.
Он удаляет только ветки, видимые на этой странице (поэтому, чтобы удалить остальные ветки, вам нужно перейти на следующую страницу).