팀에서 불필요한 remote branch를 지우는 명령

1845 단어 Git

소개



git을 사용하는 경우
방심하면 칠리츠모처럼 쌓이는 remotebranch.

전망이 나빠지기 때문에
PR이 지나간 타이밍에 지우는 것이 베스트일지도 모르지만 실망스러운 일이 있네요

그냥 시도했기 때문에 그 방법의 공유가됩니다.

명령


git branch -r --merged | egrep -v "\\*|release|master|develop|feature/xxx" | awk '{ print substr($0, 10)}' | xargs -I branch git push origin :branch && git fetch --prune
git branch -r --mergedmerge 완료된 branch 목록 얻기
egrep -v "\\*|release|master|develop|feature/xxx"merge 완료하더라도 지우고 싶지 않은 branch를 지정

지우고 싶지 않은 remotebranch에 대해서는 단단히 팀원에게 물어 보자!
사고의 원인이 될 수 있습니다
awk '{ print substr($0, 10)}' egrep의 출력 결과에서는 origin/가 캐릭터 라인에 포함되어 있어 후에 앞두는 remotebranch를 지우는 커멘드로 형편이 나쁘기 때문에 문자를 oridin/develop -> develop가 되도록 성형
xargs -I branch git push origin :branch형식화된 문자열을 인수로 remotebranch 지우기
git fetch --pruneremote에서 삭제된 branch를 local에 반영

실행하기 전에 어떤 remotebranch가 삭제 대상인지 확인


git branch -r --merged | egrep -v "\\*|release|master|develop|feature/xxx" | awk '{ print substr($0, 10)}' | xargs -I branch echo branch

마지막으로



remotebranch를 지우는 방법에 대해 몇 가지 방법이 있다고 생각하지만,
예를 들어 주시면 감사하겠습니다

좋은 웹페이지 즐겨찾기