
- Mirror를 통한 Repository가 자동으로 복제되는 작업
작업 절차
- 레포지토리 Mirror용 계정 생성하기 – 패스
- 생성한 계정으로 Access key 발급하기 – 패스
- 전체 그룹 및 프로젝트에 강제 푸쉬 설정
- 원본 서버에서 Outbound 설정하기
- 원본 서버에서 mirror 설정하기
- 모니터링
1. Gitlab Mirror를 위한 레포지토리 생성하기
- 원본 GITLAB에 프로젝트 정보 확인

- Mirror Gitlab 레포지토리 생성

2. Gitlab 프로젝트 권한 처리
- 기본적으로 main branch Protected 설정으로 Owner 권한을 부여해도 원본 -> 타겟으로 Mirror 적용시에는 불가능
- 불가능 : 외부에서 직접 main Push 하는 방향이라 차단
- 적용 가능하기 위해서는 전체적인
- 단일 Repository “Allow force Push” 설정

- 전체 Repository 강제 푸쉬 적용
- Admin -> Settings -> Repository -> Default branch -> Allowed to force push

3. Gitlab Outbound Requests 설정
- Gitlab 외부 git(Gitlab ,Gituhb, Bitbucket)에 접근하여 pull, push 하기 위한 과정이 필요한 경우 설정 필요

4. Gitlab Mirror 설정
- 해당 프로젝트 -> Settings -> Repository -> Mirror repositories
- Git repository URL : 타겟 URL
- Password : Mirror 생성할 Access key

- 등록 완료

5. Gitlab Mirror 작업 과정
- 원본 Repository 파일 Push

- 타켓 Repository 파일 업데이트 완료

- 동기화 완료

6. Gitlab 브랜치 생성
- Gitlab 새로운 브랜치 생성될 경우에도 Mirror가 되는지 테스트 하기 위함
- dev 브랜치 생성

- dev 브랜치 생성 완료

- 타겟 dev 브랜치 생성 완료
