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로 인해, 경로에 점이 있는 프로젝트는 모든 항목이 올바르게 가져오기 위해 이름을 변경해야 합니다.

전제 조건

- GitLab 16.0에 도입된 Maintainer 역할의 요구사항(Maintainer 역할 대신 Developer 역할) 및 GitLab 15.11.1 및 GitLab 15.10.5로 다시 이전되었습니다.

  • Gitea 버전 1.0.0 이상.
  • Gitea 가져오기 원본이 활성화되어 있어야 합니다. 비활성화된 경우, GitLab 관리자에게 활성화하도록 요청하세요. Gitea 가져오기 원본은 GitLab.com에서 기본적으로 활성화되어 있습니다.
  • 가져올 대상 그룹에 대한 최소한의 Maintainer 역할이 있어야 합니다.

Gitea 저장소 가져오기

Gitea 가져오기 페이지는 새 프로젝트를 생성할 때에 표시됩니다. Gitea 가져오기를 시작하려면:

  1. 왼쪽 사이드바에서 맨 위에서 새로 만들기(플러스)와 새 프로젝트/저장소를 선택하세요.
  2. 가져오기 인증 프로세스를 시작하려면 Gitea를 선택하세요.

개인 액세스 토큰을 사용하여 저장소 액세스 권한 부여

이 방법을 통해, Gitea와 일회성으로 인가하여 GitLab에 저장소 액세스를 부여합니다:

  1. https://your-gitea-instance/user/settings/applications으로 이동하세요 (your-gitea-instance을 Gitea 인스턴스 호스트로 대체하세요).
  2. 새 토큰 생성을 선택하세요.
  3. 토큰 설명을 입력하세요.
  4. 토큰 생성을 선택하세요.
  5. 토큰 해시를 복사하세요.
  6. GitLab로 돌아가서 토큰을 Gitea 가져오기에 제공하세요.
  7. Gitea 저장소 열람을 선택하고, GitLab이 저장소 정보를 읽는 동안 기다리세요. 완료되면, GitLab은 가져오기 페이지를 표시하여 가져올 저장소를 선택합니다.

가져올 저장소 선택

Gitea 저장소 액세스를 승인하면, Gitea 가져오기 페이지로 리디렉션됩니다.

거기에서 Gitea 저장소의 가져오기 상태를 볼 수 있습니다:

  • 가져오는 중인 저장소는 시작됨 상태로 표시됩니다.
  • 이미 성공적으로 가져온 저장소는 완료 상태로 녹색으로 표시됩니다.
  • 아직 가져오지 않은 저장소는 테이블 오른쪽에 가져오기가 표시됩니다.
  • 이미 가져온 저장소는 테이블 오른쪽에 다시 가져오기가 표시됩니다.

또한 다음을 수행할 수 있습니다:

  • 왼쪽 상단에서 모든 프로젝트 가져오기를 선택하여 Gitea 프로젝트를 한꺼번에 가져올 수 있습니다.
  • 이름으로 프로젝트를 필터링할 수 있습니다. 필터가 적용된 경우, 모든 프로젝트 가져오기는 선택한 프로젝트만 가져옵니다.
  • 권한이 있는 경우 프로젝트의 이름과 네임스페이스를 변경할 수 있습니다.