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