티스토리 뷰
발생일: 2014.05.30
키워드: git, 깃, branch, 브랜치, xargs
문제:
feature 로 시작하는 모든 브랜치를 지우려고 아래와 같이 실행했다.
$ git branch | grep feature | xargs git branch -D
헌데, 자꾸 없는 브랜치라고 나온다.
왜 일까?
해결책:
내가 git branch 명령의 결과에 컬러가 들어가도록 테마를 적용해두었기 때문이었다.
테마 때문에 `git branch`로 출력되는 브랜치 이름에 컬러 정보가 포함되어 있었다.
$ git branch | grep feature | od -c
와 같이 실행해보면, 텍스트 앞에 컬러가 들어가 있는 게 보인다.
`branch` 명령의 옵션으로 `--no-color`가 있어 아래와 같이 처리했다.
$ git branch --no-color | grep feature | git b -D
구버전 깃의 경우, 컬러 제거 옵션이 없는 경우가 있다.
이럴 땐 `grep`에 정규식 옵션을 주어 아래처럼 컬러 정보를 제외하고 처리할 수 있다.
$ git b | grep -Eo '(feature|hotfix)/[a-z-]+' | git b -D
반응형
댓글
공지사항