{"meta":{"title":"Prepare for your migration from Azure DevOps to GitHub","intro":"Планируйте свою миграцию, понимая сроки, данные для перемещения и организационную структуру.","product":"Миграции","breadcrumbs":[{"href":"/ru/migrations","title":"Миграции"},{"href":"/ru/migrations/ado","title":"Migrate from Azure DevOps"},{"href":"/ru/migrations/ado/prepare-for-your-migration-from-azure-devops-to-github","title":"4. Подготовка к миграции"}],"documentType":"article"},"body":"# Prepare for your migration from Azure DevOps to GitHub\n\nПланируйте свою миграцию, понимая сроки, данные для перемещения и организационную структуру.\n\n## Определите, сколько вам нужно мигрировать\n\nОпределите временную шкалу, которая будет в значительной степени диктовать ваш подход. Первым шагом для определения временной шкалы является получение инвентаризации того, что необходимо перенести.\n\n* Число репозиториев\n* Количество запросов на вытягивание\n\n> \\[!NOTE] Время миграции в основном основано на количестве запросов на вытягивание в репозитории. Если вы хотите мигрировать 1 000 репозиториев, и в каждом репозитории в среднем 100 pull request, ваша миграция, скорее всего, будет очень быстрой. Если вы хотите мигрировать только 100 репозиториев, но в каждом в среднем 75 000 pull request, миграция займет гораздо больше времени и требует больше планирования и тестирования.\n\nРекомендуем команду `inventory-report` в ADO2GH extension of the GitHub CLI. Эта команда подключается к API Azure DevOps, а затем создаст несколько CSV-файлов.\n`repos.csv` содержит информацию о ваших репозиториях, включая количество pull request.\n\nДля создания CSV-файлов используйте следующую команду, заменяя `YOUR_ADO_ORG` на вашу организацию на Azure DevOps.\n\n```shell copy\ngh ado2gh inventory-report --ado-org YOUR_ADO_ORG\n```\n\nПосле того как вы составите инвентаризацию репозиториев, которые нужно мигрировать, взвесьте данные по инвентарю с желаемым временным графиком.\n\n* Если ваша организация может выдержать более высокую степень изменений, возможно, вы сможете перенести все репозитории одновременно, завершив свои усилия по миграции через несколько дней.\n* Если у вас есть команды, которые не могут одновременно мигрировать, возможно, стоит сделать пакетную и поэтапно распределить миграции под сроки команд, расширяя усилия по их миграции.\n\n## Определить GitHub организационную структуру\n\nДалее спланируйте организационную структуру, которую вы будете создавать в GitHub. ADO и GitHub имеют разные способы организации работы предприятия.\n\n* ADO: репозитории > командного проекта > организации\n* GitHub: Корпоративные > организации > репозитории\n\nПосле перехода на GitHub, у вас должен быть только один корпоративный аккаунт и небольшое количество организаций, принадлежащих этому предприятию. Каждая организация из ADO должна соответствовать одной организации на GitHub.\n\n> \\[!NOTE] Концепция командного проекта, используемого для группировки репозиториев в ADO, не существует в GitHub. Мы не рекомендуем создавать организацию GitHub для каждого командного проекта в ADO, так как это может привести к большому списку негруппированных репозиториев внутри каждой организации. Однако вы можете управлять доступом к группам репозиториев, создавая команды.\n\nЕсли вы хотите разбить усилия по миграции на партии, новая структура поможет вам их определить. Если у вас несколько организаций в ADO, а репозитории каждой организации имеют достаточно большой размер, рассмотрите возможность пакетной обработки по организации.\n\n1. Определите, какой будет новая структура организации.\n2. Определите, нужно ли разбить усилия миграции на небольшие пакеты.\n3. Если это так, решите, как вы хотите разбить миграцию.\n\n## Настройка разрешений репозитория\n\nПоскольку разрешения работают иначе GitHub , чем в ADO, GitHub Enterprise Importer не пытается мигрировать разрешения репозиториев из ADO.\n\nКогда вы используете ADO2GH CLI, GitHub Enterprise Importer я создам две команды GitHub для каждого командного проекта в ADO. Каждая команда предоставляет другой уровень доступа ко всем репозиториям, полученным из командного проекта.\n\n| Команда                      | Доступ к перенесенным репозиториям |\n| ---------------------------- | ---------------------------------- |\n| КОМАНДА —PROJECT-Maintainers | Поддерживающий                     |\n| КОМАНДА —PROJECT-Admins      | Администратор                      |\n\nЧтобы предоставить доступ к перенесенным репозиториям, вы можете добавить людей в эти команды. Вы можете сделать это вручную на GitHub или, если решили связать команды с группами Azure Active Directory (AAD) во время миграции, управляя членством в AAD. Дополнительные сведения об управлении членством в команде вручную см. в разделе [Добавление участников организации в команду](/ru/organizations/organizing-members-into-teams/adding-organization-members-to-a-team)."}