Gitea에서 GitLab으로 프로젝트 가져오기
Tier: Free, Premium, Ultimate
Offering: GitLab.com, Self-Managed, GitLab Dedicated
- GitLab 15.8에서 소개되었으며, 더 이상 자동으로 존재하지 않는 네임스페이스나 그룹을 생성하지 않습니다. GitLab은 네임스페이스나 그룹 이름이 사용 중이라면 더 이상 사용자의 개인 네임스페이스를 기본값으로 하지 않습니다.
- 경로에
.
이 포함된 프로젝트를 가져오는 능력은 GitLab 16.11에 추가되었습니다.
Gitea에서 프로젝트를 GitLab으로 가져옵니다.
Gitea 가져오기는 다음을 가져올 수 있습니다:
- 리포지터리 설명
- Git 리포지터리 데이터
- 이슈
- 풀 리퀘스트
- 마일스톤
- 레이블
가져올 때, 리포지터리 공개 액세스는 유지됩니다. Gitea에서 리포지터리가 비공개인 경우, GitLab에서도 비공개로 생성됩니다.
알려진 문제점
- Gitea가 OAuth 공급자가 아니기 때문에 작성자 또는 담당자를 GitLab 인스턴스의 사용자에게 매핑할 수 없습니다. 프로젝트 생성자(보통 가져오기 프로세스를 시작한 사용자)가 작성자로 지정됩니다. 이슈의 경우에는 여전히 원래의 Gitea 작성자를 볼 수 있습니다.
- Gitea가 API를 통해 Merge Request의 코멘트를 가져올 수 없기 때문에 이러한 코멘트들은 가져와지지 않습니다. 자세한 정보는 Gitea API 문서를 참조하세요.
전제 조건
- 관리자 역할의 요구사항은 GitLab 16.0에서 소개되었으며, GitLab 15.11.1 및 GitLab 15.10.5로 백포트되었습니다.
- Gitea 버전 1.0.0 이상.
- Gitea 가져오기 소스가 활성화되어 있어야 합니다. 비활성화된 경우 GitLab 관리자에게 활성화하도록 요청하세요. Gitea 가져오기 소스는 GitLab.com에서 기본적으로 활성화되어 있습니다.
- 가져오기할 대상 그룹에서 적어도 관리자 역할이 있어야 합니다.
Gitea 리포지터리 가져오기
Gitea 가져오기 페이지는 새 프로젝트를 생성할 때 표시됩니다. Gitea 가져오기를 시작하려면 다음을 수행하세요:
- 좌측 사이드바의 상단에서 새로 만들기() 및 새 프로젝트/리포지터리를 선택합니다.
- 가져오기 권한 부여 프로세스를 시작하려면 Gitea를 선택합니다.
개인 접근 토큰을 사용하여 리포지터리에 대한 액세스 권한 부여
이 방법으로 Gitea와의 일회성 권한 부여를 통해 GitLab이 리포지터리에 액세스할 수 있습니다:
-
https://your-gitea-instance/user/settings/applications
로 이동합니다(사용자의 Gitea 인스턴스의 호스트로 바꿉니다). - 새 토큰 생성을 선택합니다.
- 토큰 설명을 입력합니다.
- 토큰 생성을 선택합니다.
- 토큰 해시를 복사합니다.
- GitLab로 돌아가서 토큰을 Gitea 가져오기에 제공합니다.
- Gitea 리포지터리 디렉터리을 선택하고 GitLab이 리포지터리 정보를 읽는 동안 기다립니다. 완료되면 GitLab이 가져오기 페이지를 표시하여 가져올 리포지터리를 선택할 수 있습니다.
가져올 리포지터리 선택
Gitea 리포지터리에 대한 액세스 권한을 부여한 후에 Gitea 가져오기 페이지로 리디렉션됩니다.
거기서 Gitea 리포지터리의 가져오기 상태를 볼 수 있습니다:
- 가져오는 중인 리포지터리는 시작됨 상태를 보여줍니다.
- 이미 성공적으로 가져온 리포지터리는 완료된 상태인 녹색으로 표시됩니다.
- 아직 가져오지 않은 리포지터리는 테이블 우측에 가져오기가 표시됩니다.
- 이미 가져온 리포지터리는 테이블 우측에 재가져오기가 표시됩니다.
또한 다음을 할 수 있습니다:
- 좌측 상단에서 모든 프로젝트 가져오기를 선택하여 한꺼번에 모든 Gitea 프로젝트를 가져옵니다.
- 이름으로 프로젝트를 필터링합니다. 필터가 적용된 경우 모든 프로젝트 가져오기는 선택된 프로젝트만 가져옵니다.
- 권한이 있다면 프로젝트의 이름 및 다른 네임스페이스를 선택할 수 있습니다.