{"meta":{"title":"Экспорт миграционных данных из GitHub.com","intro":"Данные миграции можно экспортировать из организации на GitHub.com. Для этого выберите нужные репозитории с помощью API, а затем создайте архив миграции, который можно импортировать в экземпляр GitHub Enterprise Server.","product":"Миграции","breadcrumbs":[{"href":"/ru/migrations","title":"Миграции"},{"href":"/ru/migrations/using-ghe-migrator","title":"ghe-migrator"},{"href":"/ru/migrations/using-ghe-migrator/exporting-migration-data-from-githubcom","title":"Экспорт из GitHub.com"}],"documentType":"article"},"body":"# Экспорт миграционных данных из GitHub.com\n\nДанные миграции можно экспортировать из организации на GitHub.com. Для этого выберите нужные репозитории с помощью API, а затем создайте архив миграции, который можно импортировать в экземпляр GitHub Enterprise Server.\n\n## Подготовка исходной организации к GitHub\n\n1. Убедитесь, что у вас есть [разрешения владельца](/ru/organizations/managing-peoples-access-to-your-organization-with-roles/roles-in-an-organization) в репозиториях исходной организации.\n\n2. [Создание маркера](/ru/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) доступа с `repo` областями и `admin:org` областями в GitHub.com.\n\n3. Чтобы свести к минимуму время простоя, создайте список репозиториев, которые необходимо экспортировать из исходного экземпляра. Можно добавить сразу несколько репозиториев для экспорта с помощью текстового файла, в котором указаны URL-адреса каждого репозитория в отдельной строке.\n\n## Экспорт репозиториев организации\n\n> \\[!NOTE]\n> Связи вилок не сохраняются после миграции.\n\nЧтобы экспортировать данные репозитория из GitHub.com, используйте [API миграций](/ru/rest/migrations).\n\nAPI миграций в настоящее время доступен в предварительной версии. Это означает, что конечные точки и параметры могут быть изменены в будущем.\n\n## Создание архива миграции\n\n> \\[!NOTE]\n> Блокировка репозитория предотвращает доступ на запись к репозиторию. Связать новые команды или участников совместной работы с заблокированным репозиторием невозможно.\n>\n> Если вы выполняете пробный запуск, блокировать репозиторий не нужно. При переносе данных из используемого репозитория GitHub настоятельно рекомендует блокировать репозиторий. Дополнительные сведения см. в разделе [Сведения о миграции ghe-миграции](/ru/migrations/using-ghe-migrator/about-ghe-migrator#types-of-migrations).\n\n1. Уведомите членов вашей организации о том, что вы планируете выполнять миграцию. Экспорт может занять несколько минут в зависимости от количества экспортируемых репозиториев. Полная миграция, включая импорт, может занять несколько часов, поэтому рекомендуется выполнить пробный запуск, чтобы определить, сколько времени займет весь процесс. Дополнительные сведения см. в разделе [Сведения о миграции ghe-миграции](/ru/migrations/using-ghe-migrator/about-ghe-migrator#types-of-migrations).\n\n2. Запустите миграцию, отправив запрос `POST` к [конечной точке миграции](/ru/rest/migrations#start-an-organization-migration). Что вам понадобится:\n\n   * Маркер доступа для проверки подлинности\n\n   * [Список репозиториев](/ru/rest/repos#list-organization-repositories), которые требуется перенести:\n\n     ```shell\n     curl -H \"Authorization: Bearer GITHUB_ACCESS_TOKEN\" \\\n     -X POST \\\n     -H \"Accept: application/vnd.github+json\" \\\n     -d'{\"lock_repositories\":true,\"repositories\":[\"ORG_NAME/REPO_NAME\", \"ORG_NAME/REPO_NAME\"]}' \\\n     https://api.github.com/orgs/ORG_NAME/migrations\n     ```\n\n   * Если вы хотите заблокировать репозитории перед их переносом, убедитесь, что для параметра `lock_repositories` задано значение `true`. Настоятельно рекомендуется сделать это.\n\n   * Вы можете исключить вложения файлов, передав `exclude_attachments: true` в конечную точку. Вложения файлов могут быть большими и могут без необходимости увеличить размер окончательного архива миграции. Окончательный размер архива должен быть меньше 20 ГБ.\n\n   Этот запрос возвращает уникальный объект `id`, представляющий миграцию. Он потребуется для последующих вызовов API миграций.\n\n3. Отправьте запрос `GET` в [конечную точку статуса миграции](/ru/rest/migrations#get-an-organization-migration-status), чтобы получить статус миграции. Что вам понадобится:\n\n   * Маркер доступа для проверки подлинности\n   * Уникальный `id` миграции:\n\n     ```shell\n     curl -H \"Authorization: Bearer GITHUB_ACCESS_TOKEN\" \\\n     -H \"Accept: application/vnd.github+json\" \\\n     https://api.github.com/orgs/ORG_NAME/migrations/ID\n     ```\n\n   Миграция может находиться в одном из указанных ниже состояний.\n\n   * `pending` — это означает, что миграция еще не запущена.\n   * `exporting` — это означает, что миграция находится в процессе выполнения.\n   * `exported` — это означает, что миграция успешно завершена.\n   * `failed` — это означает, что миграция завершилась сбоем.\n\n4. После экспорта миграции скачайте архив миграции, отправив запрос `GET` к [конечной точке загрузки миграции](/ru/rest/migrations#download-an-organization-migration-archive). Что вам понадобится:\n   * Маркер доступа для проверки подлинности\n   * Уникальный `id` миграции:\n\n     ```shell\n     curl -H \"Authorization: Bearer GITHUB_ACCESS_TOKEN\" \\\n     -H \"Accept: application/vnd.github+json\" \\\n     -L -o migration_archive.tar.gz \\\n     https://api.github.com/orgs/ORG_NAME/migrations/ID/archive\n     ```\n\n5. Архив миграции автоматически удаляется через семь дней. Если вы предпочитаете удалить его раньше, можно отправить запрос `DELETE` в [конечную точку удаления архива миграции](/ru/rest/migrations#delete-an-organization-migration-archive). Что вам понадобится:\n   * Маркер доступа для проверки подлинности\n   * Уникальный `id` миграции:\n\n     ```shell\n     curl -H \"Authorization: Bearer GITHUB_ACCESS_TOKEN\" \\\n     -X DELETE \\\n     -H \"Accept: application/vnd.github+json\" \\\n     https://api.github.com/orgs/ORG_NAME/migrations/ID/archive\n     ```\n\n6. Сведения о подготовке архивных данных миграции для импорта в экземпляр GitHub Enterprise Server см. в разделе [Миграция данных на GitHub Enterprise Server](/ru/migrations/using-ghe-migrator/migrating-data-to-github-enterprise-server#preparing-the-migrated-data)."}