도움말:문서 가져오기

From Meta, a Wikimedia project coordination wiki
This page is a translated version of the page Help:Import and the translation is 90% complete.
Outdated translations are marked like this.
Meta-Wiki Importer icon
Meta-Wiki Importer icon

두 가지 유형의 가져오기가 있으며 둘 다 특수:가져오기를 통해 접근할 수 있습니다:

  • 다른 위키 문서 가져오기(transwiki import), 또는 인터위키 문서 가져오기(interwiki import): 다른 위키에서 직접 페이지를 가져옵니다; 대상 위키의 설정에 따라 활성화된 원본 위키가 결정됩니다; ID가 'import-interwiki-text'인 메시지 (토론)가 나타납니다; "페이지를 이름공간으로 전송" 후에 대상 이름공간을 지정할 수 있습니다; "모든" 옵션은 실제로 "원본과 동일"을 의미합니다.
  • 업로드 가져오기: 다른 위키에서 페이지를 내보내기 생성하여 생성된 특수 XML 형식으로 파일을 가져옵니다. ID가 'importtext'인 메시지 (토론)가 나타납니다;

이러한 작업을 수행하는 사용자 그룹에 대한 정보는 가져오기 페이지를 참조하세요.

다른 위키 문서 가져오기

많은 위키미디어 위키에서 다른 위키 문서 가져오기도 비활성화되어 ID가 'importnosources'인 메시지 (토론)를 제공합니다: "No wikis from which to import have been defined and direct history uploads are disabled." 그러나 commons:, foundation:, w:, cs:fr:의 페이지는 현재 메타로 가져올 수 있으며 메타의 페이지는 mw:로 가져올 수 있습니다. 페이지 역사와 Special:Log/import에 가져오기 동작이 추가됩니다.

가져온 페이지의 이름이 대상 위키의 기존 페이지와 동일한 경우 가져온 페이지가 최신 버전이면(타임스탬프에 따라) 페이지를 덮어씁니다. 가져오기 중에 오류가 발생한 경우 가져오기가 부분적으로 완료되었음을 알 수 있습니다(일부 페이지를 가져왔지만 전부는 아님). 페이지를 덮어쓰므로 가져오기를 다시 시도하는 것은 문제가 되지 않습니다.

기록 정보를 포함하도록 지정한 경우 가져온 페이지의 '기록'과 사용자 기여에서 편집 정보도 확인해야 합니다. 편집 내용은 '최근 변경 사항'에 표시되지 않습니다(원래 편집 시점이나 가져오기 시점에 위치하지 않음). 효과는 전체 기록 병합과 유사하며 나중에 가져온 편집 내용을 확인하기가 매우 어려울 수 있습니다.

가져온 페이지에 있는 틀을 가져오는 "모든 틀 포함" 옵션이 있습니다. 이것이 사용되지 않으면 동일한 이름의 틀이 대상 위키에 존재하지 않는 한 레드링크됩니다. 이것이 사용되면 대상 위키에 있는 동일한 이름의 틀을 덮어쓰고 가져오기에는 가져온 페이지의 틀뿐만 아니라 해당 틀 내에서 사용된 틀도 포함됩니다. 특별히 끼워넣기 페이지를 만들고 옵션을 켜고 해당 페이지를 가져옴으로써 페이지 컬렉션을 가져올 수 있습니다. 그러나 이것은 매우 신중하게 수행되어야 하며 그렇지 않으면 원하는 것보다 훨씬 더 많이 가져올 수 있습니다. 다시 말하지만, 끼워넣은 페이지의 모든 틀과 해당 틀 내에 중첩된 모든 틀을 가져옵니다.

가져오기의 유용한 적용은 다음과 같습니다:

  • 페이지가 다른 위키로 이동되어 이후 편집되면 대상 위키에 기록을 함께 보관하세요. 이것은 페이지 이동 등으로 인해 소스 페이지를 찾기가 더 어려워지는 경우에 특히 유용합니다.
  • 페이지를 다른 위키로 이동하여 원본 위키에서 삭제할 경우 이력을 보존합니다.
  • 다른 위키/하위 도메인에 존재하는 틀을 갖기 위해.
  • 위키문헌 및 위키낱말사전과 같은 특정 프로젝트에서 언어 하위 도메인 간에 다국어 콘텐츠를 이동합니다.

구현

위키에 트랜스위키 권한이 구성되어 있는지 확인하고 구성되어 있는 경우 해당 위키에 대해 API를 사용하여 위키를 쿼리할 수 있습니다.

구성은 <param name="interwikisource" description="For interwiki imports: wiki to import from"> …로 표현됩니다.

또는 http://noc.wikimedia.org/conf/highlight.php?file=InitialiseSettings.php에서 전역 구성을 확인하고 wgImportSources 섹션을 볼 수 있습니다.

트랜스위키가 구성되어 있지 않으면 트랜스위키를 구성하고 가져오기를 원하는 위키를 식별하기 위해 지역 커뮤니티의 총의를 구하세요. 구성 변경 요청은 Phabricator:에 제출해야 합니다. 버그 요청에서 커뮤니티 토론으로 연결될 것으로 예상됩니다.

로컬 위키에서 API를 쿼리하면 사용자 그룹 권한도 표시되고 <add> 태그를 확인합니다.

트랜스위키 가져오기 권한 할당

대부분의 트랜스위키 권한은 커뮤니티 위키에서 성공적인 토론 후에 사용자에게 할당되며, 그 다음에는 사무장 요청/허가에서 사무장에게 요청이 이어집니다. 일부 위키는 로컬 사무관이 이 권한을 할당할 수 있도록 요청하고 승인했습니다. 현재 상황은 위키에서 확인하세요.

업로드 가져오기

내보내는 방법과 내보내는 페이지의 형식은 도움말:내보내기에 설명되어 있습니다. 일반적으로 모든 사용자는 위키 페이지를 파일로 내보낼 수 있지만 파일에서 페이지를 위키로 가져오려면 해당 위키에 대한 '관리자' 권한이 있어야 합니다. 따라서 자신의 미디어위키 설치가 있는 경우 'Special:Import' 페이지를 볼 수 있어야 합니다. 위키미디어 재단 위키 프로젝트 제품군 내에서 importupload 사용자 권한이 있는 사용자만 파일에서 페이지를 위키로 가져올 수 있습니다. 여기에는 "문서 가져오기 사용자" 그룹의 구성원과 사무장만 포함됩니다.

컴퓨터에서 위키 페이지를 가져오려면 찾아보기를 클릭하여 로컬 파일 시스템에서 파일을 찾으면 됩니다.

가져오기 파일 편집

업로드 가져오기의 경우 XML 파일을 쉽게 읽을 수 있는 파일 형식으로 내보내기와 가져오기 사이에서 쉽게 편집할 수 있습니다. 이것은 신중하고 성실하게 수행되어야 하며, 이전 편집을 수행하고 잘못된 사용자 이름을 사용할 수 있으며 삭제와 함께 "기록을 변경"할 수 있습니다. 이 편집의 응용은 다음과 같습니다:

  • 가져오기에 대한 편집 요약에 메모 추가
  • 이름 충돌을 피하기 위해 사용자 이름 또는 페이지 이름 변경(제목 태그 사이와 사용자 이름 태그 사이 또는 링크와 서명에서도)
  • 이름공간 이름을 일반 또는 적용 가능한 이름으로 변경(동일)

페이지의 두 버전에 동일한 타임스탬프가 있는 경우(하나는 기존 버전과 동일한 타임스탬프로 업로드되었기 때문에) 최신(가져온) 버전은 편집 기록에 표시되지만 문서 자체에는 표시되지 않습니다.

비주얼 스튜디오 .NET C#에서 이러한 XML 파일로 작업하는 예는 mw:Manual:XML Import file manipulation in CSharp를 참조하세요.

병합 기록 및 기타 복잡한 문제

"mw:Manual:Importing_XML_dumps#Troubleshooting도 참조하세요."

가져오기에 이력 정보가 포함된 경우, 편집 작업에 가져오기 프로젝트에서 다른 사람이 사용하는 사용자 이름이 포함된 경우 업로드 가져오기를 적용해야 하며 모호성을 피하기 위해 XML 파일의 사용자 이름을 먼저 다른 이름으로 바꿔야 합니다. 가져오기 프로젝트에서 사용자 이름이 아직 사용되지 않은 경우 계정이 자동으로 생성되지는 않지만 사용자 기여는 어쨌든 사용할 수 있습니다.

링크에서 페이지를 참조하거나 URL을 입력할 때와 마찬가지로 일반 이름공간 이름은 자동으로 변환되며 접두사가 이름공간 이름이 아닌 경우 페이지는 기본 이름공간에 도착합니다. 그러나 예를 들어 "메타:"는 인터위키 연결에 해당 접두사를 사용하는 프로젝트에서 무시(삭제)될 수 있습니다. 가져오기 전에 XML 파일에서 "프로젝트:"로 변경하는 것이 바람직할 수 있습니다.

페이지 이름이 이미 있는 경우 해당 이름을 가진 페이지의 개정판을 가져오면 페이지 기록이 병합됩니다. 페이지 기록에 있는 두 개의 기존 개정 사이에 개정을 삽입한 후 다음 편집을 수행한 사용자가 변경한 내용은 실제 변경 내용과 다르게 보입니다. 사용자가 실제로 변경한 내용을 보려면 diff를 가져와야 합니다 삽입된 것과 관련된 diff가 아니라 이미 존재하는 두 개정 사이에 있습니다. 따라서 실제 페이지 기록을 재구성하는 경우를 제외하고는 이 작업을 수행해서는 안 됩니다.

동일한 페이지, 날짜 및 시간(정확한 초까지)의 개정이 이미 있는 경우 개정을 가져오지 않습니다. 실제로 이것은 개정판을 이미 가져온 경우에만 발생합니다(현재 위키 또는 이전에 내보내기가 이루어진 위키로, 또는 둘 다 세 번째 사이트에서 가져온 경우).

편집 요약은 다른 페이지를 참조하거나 링크할 수 있습니다. 페이지는 가져왔지만 대상 페이지는 가져오지 않은 경우 혼동될 수 있습니다.

편집 요약은 페이지를 가져온 것으로 자동 표시되지 않지만 가져오기 전에 XML 파일의 편집 요약에 추가할 수 있는 업로드 가져오기의 경우입니다. 이는 모호성 및/또는 혼란의 일부 잠재적 원인을 피할 수 있습니다. 찾기/바꾸기를 사용하여 XML 파일을 편집할 때 편집 요약에 텍스트를 추가하려면 이미 편집 요약이 있으므로 XML 파일에 주석 태그가 있는 편집과 이러한 태그가 없는 편집을 구별해야 합니다. 주석 태그 쌍이 여러 개 있는 경우 마지막 태그만 유효합니다.

사용자 기여

사용자 이름 충돌에 대한 조항이 없으면 사용자 기여 목록은 다음을 표시합니다.

  • 프로젝트에 해당 사용자 이름으로 등록된 사람의 편집
  • 페이지를 가져온 각 위키에 대해 원본 프로젝트에서 해당 사용자 이름을 가진 사용자가 가져오기 전에 가져온 페이지 편집

가져오기 당시 대상 사이트에 페이지가 아직 존재하지 않았다면 가져오기 시간과 편집 시간을 비교하여 두 페이지를 구분할 수 있습니다.

사용자 페이지와 사용자 토론 페이지의 페이지 여백에 사용자 기여 링크가 없으면 사용자가 등록되지 않으므로 모든 편집 내용을 가져옵니다.

대규모 전송

대규모 전송의 경우 충분한 시스템 권한이 있는 사람이 서버 내에서 데이터를 이동할 수 있습니다. 이는 서버에서 사용자의 로컬 컴퓨터로 대용량 XML 파일을 보낸 다음 다시 서버로 보내는 것보다 더 실용적입니다.

큰 파일은 두 가지 이유로 거부될 수 있습니다. PHP 구성 파일 php.ini에 있는 PHP 업로드 제한:

 ; Maximum allowed size for uploaded files.
 upload_max_filesize = 20M

또한 입력 양식의 크기를 제한하는 숨겨진 변수도 있습니다., includes/specials/SpecialImport.php:

   <input type='hidden' name='MAX_FILE_SIZE' value='20000000' /> 

php.ini에서 다음 네 가지 지시문을 변경해야 할 수도 있습니다:

; Maximum size of POST data that PHP will accept.
post_max_size = 20M
max_execution_time = 1000  ; Maximum execution time of each script, in seconds
max_input_time = 2000	    ; Maximum amount of time each script may spend parsing request data
; Default timeout for socket based streams (seconds)
default_socket_timeout = 2000

같이 보기

  • 데이터 덤프는 대체 가져오기 메커니즘을 제공하는 유지 관리 스크립트 maintenance/importDump.php를 설명하지만 최근 미디어위키 배포판에서 항상 제대로 작동하는 것은 아닙니다
  • 문서 가져오기