git branch --list 'feat/*' | xargs -r git branch -d
패턴과 매칭되는 branch 목록을 파이프로 git branch -d
에 전달하는 명령어이다.
아래에는 ChatGPT 의 설명을 첨부한다.
'feat/' 패턴을 가진 브랜치 리스트를 보여주는 git branch --list 명령어를 실행합니다. 여기서, 'feat/' 패턴은 feat/ 로 시작하는 모든 브랜치를 의미합니다.
위에서 나온 브랜치 리스트를 xargs 명령어에 넘겨줍니다. xargs는 입력으로 받은 내용을 다른 명령어의 인자로 전달하는 역할을 합니다.
xargs -r 명령어는 입력이 없으면 git branch -d 명령어를 실행하지 않도록 합니다. 즉, 브랜치 리스트가 없으면 아무 동작도 하지 않습니다.
마지막으로, git branch -d 명령어를 실행합니다. 이 명령어는 인자로 받은 브랜치를 삭제합니다. 따라서 'feat/*' 패턴을 가진 모든 브랜치가 삭제됩니다.
위 명령어에서 사용된 '|' 기호는 쉘의 파이프(pipe) 기호입니다. 이 기호는 앞의 명령어의 출력 결과를 다음 명령어의 입력으로 전달하는 역할을 합니다.
즉, 위 명령어는 먼저
git branch --list 'feat/'
명령어를 실행하여feat/
패턴을 가진 브랜치 리스트를 출력합니다. 이 출력 결과를|
기호를 통해xargs -r git branch -d
명령어의 입력으로 전달합니다. 따라서,xargs
명령어는 이전 명령어에서 출력된 브랜치 리스트를 인자로 받아서git branch -d
명령어를 실행합니다.파이프 기호는 여러 개의 명령어를 결합해서 사용할 수 있습니다. 이때, 앞의 명령어의 출력 결과가 다음 명령어의 입력으로 전달되므로, 여러 개의 명령어를 연결하여 하나의 명령어 체인(command chain)을 만들 수 있습니다. 이를 통해 복잡한 작업을 간편하게 처리할 수 있습니다.