본문 바로가기

gitlab을 사용하다가 회원의 권한을 Developer로 설정했음에도 불구하고 push할 때 git did not exit cleanly (exit code 1)와 같은 오류 메시지를 내뱉을 때가 있습니다.
순간 당황하겠지만 아래의 내용을 보시면 한줄기 빛과 같은 희망을 만날 수 있습니다.

gitlab의 권한체계를 보면 Guest, Reporter, Developer, Maintainer, Owner* 의 5개 권한을 운영하고 있고 push는 보통 Developer, Maintainer, Owner*의 권한에 대해서 가능합니다. 그러나 프로젝트에 따라 Developer도 안되는 경우가 있는데 아래의 설정으로 해결을 할 수 있습니다.

프로젝트 Push 설정

Protected Branches 설정

  1. 설정 > 저장소를 선택합니다.
  2. Protected Branches 메뉴의 오른쪽에 있는 펼치기 버튼을 클릭합니다.
  3. 프로젝트의 브렌치에 대해 mergepush 에 대한 권한을 설정하는 화면입니다.
    1. 원하는 Branch를 선택합니다.
    2. merge(합치기)를 할 수 있는 권한을 지정합니다. ( Developer + Maintainer )
    3. push(업로드)할 수 있는 권한을 지정합니다. ( Developer + Maintainer )
  4. 기본 master브렌치에 대한 권한이 이미 설정되어 있네요. 여기에 ( Maintainer )만 선택되어 있다면 ( Developer + Maintainer )로 선택하시면 됩니다.
  5. 설정되어있는 것을 삭제하는 버튼입니다.

이제 Developerpush할때 오류없이 정상적으로 작동이 될 것입니다.

어쩌다보니여기까지

고급지게 만들어 저렴하게 배포는 공작소

0