Bitbucket Pipelines을 사용하여 리포지토리의 병합 된 분기를 정기적으로 삭제
3695 단어 BitbucketPipelinesGitBitbucket
전제
Bitbucket Pipelines란 무엇입니까?
Bitbucket 용 CI/CD 용 기능.
리포지토리에의 코드의 push 등을 트리거로서, docker 컨테이너상에서 스크립트를 실행할 수 있다.
병합된 원격 분기를 일괄 삭제하는 명령
git branch -r --merged origin/master | grep -v master | grep -v release | sed -e "s% *origin/%%" | xargs --no-run-if-empty -Ibranch git push origin :branch
※
grep -v
곳은 각 프로젝트에 맞추어 삭제하고 싶지 않은 브랜치를 지정하는 것참고 : Git에서 원격 병합 된 분기를 일괄 삭제 @fukayatsu
설정 절차
Pipelines 용 SSH 키 설정
리포지토리의 페이지의
設定 > PIPELINES > SSH Keys
로부터 비밀키·공개키의 페어를 등록.「Generate keys」로 작성한 키 페어의 공개키를 팀에 등록할 수 있으면 베스트.
그렇게 할 수 없으면 자신의 계정에 등록한다(자신의 계정에서의 조작이 되므로 주의).
Pipeline 등록
응용 프로그램 루트에
bitbucket-piepelines.yml
라는 파일을 다음의 내용으로 작성 (이미 존재하는 경우 편집하여 설정을 추가).bitbucket-pipelines.yml
pipelines:
custom:
prune-branches: # 自由に設定可(表示用の名前)
- step:
image: alpine/git
script:
- git fetch
- git branch -r --merged origin/master | grep -v master | grep -v release | sed -e "s% *origin/%%" | xargs --no-run-if-empty -Ibranch git push origin :branch
지금까지 수동 실행이 가능합니다.
브랜치의 Run pipeline for a branch 또는 커밋의 Run pipeline에서 클릭하면 다음과 같은 모달 창이 열리므로 Run을 클릭하면 Pipeline이 실행 시작됩니다.
Pipeline 실행 스케줄 설정
하기 페이지(공식 문서)의 「2. Create a schedule」에 따라 설정.
리포지토리 페이지의 "Pipelines"에서
Schedules > New schedule
를 선택합니다.브랜치(※)와, 방금 등록한 Pipeline, 실행 시간을 선택하고 「Create」를 클릭하면 등록 완료.
※ 이번 Pipeline 은 실행 내용이 브랜치에 의존하지 않으므로, 어느 것이어도 좋다.
등록된 것은 화면상에서 확인할 수 있다.
Reference
이 문제에 관하여(Bitbucket Pipelines을 사용하여 리포지토리의 병합 된 분기를 정기적으로 삭제), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/okashoi/items/28c8291361f237abb680텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)