Github 에 조직 저장소를 구성한다면 일단 Organization 을 생성하고 그 하위에 Repository를 생성 한다. 개인저장소에 공동작업자를 생성하는 것과는 조금 다른 개념인데 다수의 Repository 를 조금 더 포괄적인 Organization 단에서 관리할 수 있게 된다.
Organization 를 구성할 경우 각 Repository 의 공동작업자를 추가하는게 아니라 Organization 자체에 구성원을 추가해서 관리하게 된다. 기본적으로 Organization 의 구성원으로 추가되어야만 Github 로그인시 해당 Organization 을 확인할 수 있고 구성원의 권한은 Repository 까지 상속된다.
Organization 에 구성원을 추가할 때는 Owner 또는 Member 권한을 줄 수 있고 일반적으로 관리자 외에는 Member 권한으로 추가하게 된다. 또한 Member 의 기본권한을 none, read, write, admin 으로 으로 설정할 수도 있는데 기본적으로 read로 설정한다.
이 경우 Member 로 추가된 구성원은 각 Repository 에 대해 clone, pull 만 가능하고 push 는 불가능하기 때문에 push가 가능하게 하려면 각 Repository 에 공동작업자로 추가해야 한다.
그런데 각 프로젝트의 담당자가 명확히 나누어져 있다면 좋겠지만 대부분의 조직에서는 이렇게 관리되지 못하고 조직 구성원이 모든 프로젝트에 조금씩 발을 담그고 있기 때문에 차라리 Organization 에 Member의 기본권한을 write 로 주는게 차라리 편할 수 있다.
그리고 또 한가지 Organization 하위에 생성하는 Repository 는 internal 로 생성하든 private 로 생성하든 큰 의미는 없다. internal은 Gtihub 에 로그인한 사람이 볼 수 있고 private 는 로그인한 사람 중에도 별도 권한이 있는 사람이 볼 수 있는 저장소인데 Organization 하위에 구성된 저장소는 기본적으로 Github 에 로그인 되어 있어야 하고 구성원으로 추가되어 있어야 하기 때문이다.
'ETC' 카테고리의 다른 글
gradle 로컬 빌드 java 지정하기 (0) | 2022.06.02 |
---|---|
kotlin, gradle 환경 jvm 버전 지정하기 (0) | 2022.04.29 |
Github ssh 연동 with Jenkins (0) | 2021.10.14 |
VsCode 단축키(맥북) (0) | 2021.09.15 |
intellij 에서 갑자기 import 경로를 찾지 못할 때... (0) | 2021.08.26 |