6 декабря 2016 г.

Удаление смердженных git веток

Часто сталкиваюсь с ситуацией, когда на локальном компьютере копятся куча не удаленных вовремя веток, уже давно слитых в master или development ветки. Среди них конечно же есть ветки работа над которыми еще не закончена. 

Чтобы быстро узнать названия всех веток, которые уже были слиты, допустим в develop, нам необходимо выполнить 2 простых шага:
  1. Переключаемся на ветку develop $ git checkout develop

  2. Выполняем в консоле  git branch --merged | grep -v develop | grep -v master $ git branch --merged | grep -v develop | grep -v master

В итоге мы получим список веток которые не были слиты в develop.

При желании можно их сразу удалять этим скриптом, просто добавив в конце "| xargs git branch -d". В итоге это будет выглядеть так:
$ git branch --merged | grep -v develop | grep -v master | xargs git branch -d
 Но я бы не рекомендовал этого делать, во избежание потерь данных)