GitLab 프로젝트 이전 - Transfer (Namespace 변경)

프로젝트를 다른 네임스페이스로 이전하면 프로젝트를 다른 그룹으로 이전하는 것입니다.

전제 조건

  • 이전하려는 그룹에 대해 최소한 Maintainer 역할이 있어야 합니다.

  • 이전하는 프로젝트의 Owner여야 합니다.

  • 그룹에서 새 프로젝트 생성을 허용해야 합니다.

  • 프로젝트에 컨테이너 이미지(container images)가 포함되어 있지 않아야 합니다.

  • 모든 npm 패키지를 제거합니다. 프로젝트를 다른 루트 네임스페이스로 이전하는 경우 프로젝트에 npm 패키지가 포함되어 있지 않아야 합니다. 사용자 또는 그룹의 경로를 업데이트하거나 하위 그룹 또는 프로젝트를 이전할 때는 먼저 모든 npm 패키지를 제거해야 합니다. npm 패키지로 프로젝트의 루트 네임스페이스를 업데이트할 수 없습니다. 명명 규칙을 따르도록 .npmrc 파일을 업데이트하고 필요한 경우 npm 게시를 실행하세요.

  • 프로젝트에 보안 정책이 할당되어 있으면 이전하는 동안 자동으로 할당 해제됩니다.

프로젝트를 이전 절차

  1. 상단 표시줄에서 메인 Main menu > Projects를 선택하고 프로젝트를 찾습니다.

  2. 왼쪽 사이드바에서 Settings > General을 선택합니다.

  3. Advanced을 펼칩니다.

  4. Transfer project 아래에서 프로젝트를 이전할 네임스페이스(namespace)를 선택합니다.

  5. Transfer project을 선택합니다.

  6. 프로젝트 이름을 입력하고 Confirm을 선택합니다.

프로젝트의 새 페이지로 리다이렉션되고 GitLab에서 리다이렉션을 적용합니다.

리포지토리 경로가 변경되면 어떻게 되나요?

리포지토리 경로가 변경되면 리다이렉션을 통해 이전 위치에서 새 위치로의 전환을 처리합니다.

사용자 이름을 바꾸거나, 그룹 경로를 변경하거나, 리포지토리 이름을 변경하는 경우:

  • 네임스페이스와 그 아래 프로젝트 등 모든 항목에 대한 URL이 새 URL로 리다이렉션됩니다.

  • 네임스페이스 아래의 프로젝트에 대한 Git 원격 URL은 새 원격 URL로 리다이렉션됩니다. 위치가 변경된 리포지토리로 푸시 또는 풀을 하면 리모트를 업데이트하라는 경고 메시지가 표시됩니다. 자동화 스크립트 또는 Git 클라이언트는 이름을 바꾼 후에도 계속 작동합니다.

  • 다른 그룹, 사용자 또는 프로젝트에서 원래 경로(original path)를 요구하지 않는 한 리다이렉션을 사용할 수 있습니다.