작업 완료된 브랜치 제거
브랜치를 만들어 작업을 완료한 후에 pr이 머지되면 remote 브랜치가 삭제되도록 하고 있다. 그런데 여전히 로컬에는 브랜치들이 남아있어서 일일이 확인하는게 일이었다. 그래서 이런 alias를 만들어서 머지된 브랜치를 제거하고 있었다.
!f() { git fetch -p && git branch -vv | grep ": gone]" | awk "{print \$1}" | xargs -r git branch -D; }; f
그런데 어쩐일인지 그 alias가 오류가 났다. 확인해보니 worktree 때문이었다. 내가 사용한 적은 거의 없지만 클로드를 사용하면 이따금 worktree를 사용하게 되는데 이게 남아 있어서 오류가 나는거다. 그래서 gone alias도 이렇게 변경했다.
!f() { git fetch -p && git for-each-ref --format="%(refname:short) %(upstream:track)" refs/heads | awk "\$2 == \"[gone]\" {print \$1}" | xargs -r git branch -D; }; f
AI에게 맡기는 방법도 있지만 그래도 이 정도는 내가 하고 싶다.
반응형