InfoGrab DocsInfoGrab Docs

파일 내보내기 프로젝트 마이그레이션 문제 해결

파일 내보내기 프로젝트 마이그레이션 문제 해결. 일반적인 오류, 성능 문제 및 해결 방법을 다룹니다.

파일 내보내기로 프로젝트를 마이그레이션 할 때 문제가 발생하면 아래의 해결 방법을 참고합니다. 문제 해결 명령 # Rails 콘솔 에서 JID를 사용해 가져오기 상태 정보와 추가 로그를 확인합니다: Project .find_by_full_path( 'group/project' ).import_state.slice( :jid , :status , :last_error ) > { "jid" => "414dec93f941a593ea1a6894" , "status" => "finished" , "last_error" => nil } # Logs grep JID /var/log/gitlab/sidekiq/current grep "Import/Export error" /var/log/gitlab/sidekiq/current grep "Import/Export backtrace" /var/log/gitlab/sidekiq/current tail /var/log/gitlab/gitlab-rails/importer.log 불일치로 인한 프로젝트 가져오기 실패 # 내보낸 프로젝트와 가져오는 프로젝트 사이에 인스턴스 러너 활성화 여부 가 일치하지 않으면 프로젝트 가져오기가 실패합니다. 이슈 276930 을 확인하고 다음 중 하나를 수행합니다: 소스 프로젝트와 대상 프로젝트 모두에서 인스턴스 러너를 활성화합니다. 프로젝트를 가져올 때 상위 그룹에서 인스턴스 러너를 비활성화합니다. 가져온 프로젝트에서 사용자 누락 # 가져온 프로젝트와 함께 사용자가 가져와지지 않으면 사용자 기여 보존 요구 사항을 참고합니다. 사용자가 누락되는 흔한 원인은 사용자의 공개 이메일 설정 이 구성되지 않은 경우입니다. 이 문제를 해결하려면 사용자에게 GitLab UI에서 이 설정을 구성하도록 안내합니다. 수동으로 구성하기에는 사용자가 너무 많다면 모든 사용자 프로필이 공개 이메일 주소를 사용하도록 Rails 콘솔 에서 설정할 수 있습니다: User .where( "public_email IS NULL OR public_email = '' " ).find_each do | u | next if u.bot? puts "Setting #{u.username} 's currently empty public email to #{u.email} …" u.public_email = u.email u.save! end 대용량 리포지터리에 대한 가져오기 우회 방법 # 최대 가져오기 크기 제한 때문에 가져오기가 성공하지 못할 수 있습니다. 가져오기 제한을 변경할 수 없다면 여기에 정리된 우회 방법 중 하나를 시도합니다. 우회 방법 옵션 1 # 다음 로컬 워크플로로 리포지터리 크기를 일시적으로 줄인 뒤 가져오기를 다시 시도할 수 있습니다: 내보내기 파일에서 임시 작업 디렉터리를 만듭니다: EXPORT=<filename-without-extension> mkdir "$EXPORT" tar -xf "$EXPORT".tar.gz --directory="$EXPORT"/ cd "$EXPORT"/ git