프로젝트 가져오기 및 내보내기 API
REST API로 프로젝트 가져오기 및 내보내기.
이 API로 프로젝트를 마이그레이션 합니다. 그룹 가져오기·내보내기 API 로 상위 그룹 구조를 먼저 마이그레이션하면 프로젝트 이슈와 그룹 에픽의 연결처럼 그룹 수준의 관계를 보존할 수 있습니다. 이 API를 사용한 다음에는 프로젝트 수준 CI/CD 변수 API 로 프로젝트의 CI/CD 변수를 보존할 수 있습니다. 컨테이너 레지스트리 는 Docker pull과 push를 반복해 직접 마이그레이션해야 합니다. 빌드 아티팩트를 다시 확보하려면 CI/CD 파이프라인을 다시 실행합니다. 사전 준비 사항: 프로젝트 내보내기는 프로젝트와 데이터 내보내기 를 참고합니다. 프로젝트 가져오기는 프로젝트와 데이터 가져오기 를 참고합니다. 프로젝트 내보내기 # 지정한 프로젝트를 내보냅니다. upload 해시 파라미터로 내보낸 프로젝트를 웹 서버나 S3 호환 플랫폼에 업로드합니다. 내보내기에서 GitLab은 다음과 같이 동작합니다. 최종 서버로는 바이너리 데이터 파일 업로드만 지원합니다. 업로드 요청에 Content-Type: application/gzip 헤더를 함께 보냅니다. 사전 서명된 URL의 서명에 이 헤더가 포함되도록 합니다. 프로젝트 내보내기 과정이 완료되기까지 시간이 걸릴 수 있습니다. 업로드 URL의 만료 시간을 너무 짧게 두지 말고 내보내기 과정 내내 사용할 수 있도록 합니다. 관리자는 최대 내보내기 파일 크기를 변경할 수 있습니다. 기본값은 무제한( 0 )입니다. 변경하려면 다음 중 한 가지 방법으로 max_export_size 를 수정합니다. GitLab UI . 애플리케이션 설정 API GitLab.com에서는 최대 가져오기 파일 크기가 고정되어 있습니다. 자세한 내용은 계정 및 한도 설정 을 참고합니다. upload 파라미터를 사용하면 upload[url] 파라미터가 필수입니다. Amazon S3로 업로드할 때는 객체 업로드용 사전 서명 URL 생성 문서의 스크립트를 참고해 upload[url] 을 생성합니다. 알려진 이슈 때문에 Amazon S3에는 최대 5GB 크기의 파일만 업로드할 수 있습니다. POST /projects/:id/export 속성 유형 필수 여부 설명 id integer or string 예 프로젝트의 ID 또는 URL 인코딩된 경로 입니다. upload[url] string 예 프로젝트를 업로드할 URL 입니다. description string 아니요 프로젝트 설명을 덮어씁니다. upload hash 아니요 내보낸 프로젝트를 웹 서버에 업로드하는 데 필요한 정보를 담은 해시입니다. upload[http_method] string 아니요 내보낸 프로젝트를 업로드할 때 사용할 HTTP 메서드입니다. PUT 과 POST 만 허용됩니다. 기본값은 PUT 입니다. curl --request POST \ --header "PRIVATE-TOKEN: <your_access_token>" \ --url "https://gitlab.example.com/api/v4/projects/1/export" \ --data