Skip to main content

Сведения о миграции с Bitbucket Server на GitHub Enterprise Cloud

Узнайте, какие данные GitHub Enterprise Importer можно перенести.

Сведения о миграции с сервера Bitbucket

Можно использовать GitHub Enterprise Importer для переноса репозиториев из Bitbucket Server в GitHub Enterprise Cloud (GitHub.com или GHE.com). Миграция с сервера Bitbucket поддерживается только для сервера Bitbucket или Bitbucket Data Center версии 5.14+ или более поздней.

Данные, перенесенные

В настоящее время мы поддерживаем перенос следующих данных репозитория с Bitbucket Server на GitHub Enterprise Cloud.

  • Источник Git (включая журнал фиксаций)

  • Запросы на вытягивание (включая комментарии, проверка запроса на вытягивание, проверка запроса на вытягивание комментарии на уровне файла и строки, необходимые рецензенты и вложения)

    Примечание.

    Пользователи могут получить 500 ошибку при попытке просмотреть запрос на вытягивание, если запрос на вытягивание был объединен и главная ветвь удален на Bitbucket Server до миграции. Bitbucket Server удаляет определенные ссылки Git на объекты для таких запросов на вытягивание, и, следовательно, эти объекты Git, связанные с запросом на вытягивание, не могут быть перенесены.

Данные, которые не переносятся

В настоящее время следующие данные не переносятся.

  • Личные репозитории, принадлежащие пользователям
  • Разрешения ветви
  • Комментарии к фиксации
  • Параметры репозитория
  • Конвейеры CI

Ограничения для перенесенных данных

Существуют ограничения на то, что GitHub Enterprise Importer может перенести. Некоторые из-за ограничений GitHub, а другие являются ограничениями GitHub Enterprise Importer.

Ограничения GitHub

  • Ограничение размера 2 ГиБ для одного коммита Git: Размер отдельного коммита в репозитории Git не должен превышать 2 ГиБ. Если размер любого из ваших коммитов превышает 2 ГиБ, вам нужно будет разделить коммит на более мелкие коммиты, каждый из которых имеет размер 2 ГиБ или меньше.
  • Ограничение байтов 255 для ссылок на Git: нет одной ссылки Git, известной как "ссылка", может иметь имя размером более 255 байт. Как правило, это означает, что ссылки не могут содержать более 255 символов, но любые символы, отличные от ASCII , например эмодзи, могут использовать более одного байта. Если какая-либо из ссылок на Git слишком велика, мы вернем четкое сообщение об ошибке.
  • Ограничение на размер файла 100 МиБ: После завершения миграции размер отдельного файла в репозитории Git не должен превышать 100 МиБ. Во время миграции репозитория этот лимит увеличивается до 400 МиБ. Рекомендуется использовать Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) для хранения больших файлов. Дополнительные сведения см. в разделе Управление большими файлами.

Ограничения GitHub Enterprise Importer

  • Ограничение на размер архивов репозитория в 40 ГиБ (public preview): Репозиторий Importer не может переносить репозитории с более чем 40 ГиБ объединенных данных Git и метаданных в архиве репозитория.
  • Ограничение размера файла в 400 МБ: при переносе репозитория с GitHub Enterprise Importerв репозитории Git не может быть больше 400 МБ. Рекомендуется использовать Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) для хранения больших файлов. Дополнительные сведения см. в разделе Управление большими файлами.
  • Объекты Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) не перенесены: Importer может перенести репозитории, использующие Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git), но сами объекты LFS не будут перенесены. Их можно отправить в место назначения миграции в качестве последующей задачи после завершения миграции. Дополнительные сведения см. в разделе Дублирование репозиториев.
  • Необходимы следующие задачи. При миграции между продуктами GitHub определенные параметры не переносятся и должны быть перенастроены в новом репозитории. Список последующих задач, которые необходимо выполнить после каждой миграции, см. в разделе Обзор миграции между продуктами GitHub.
  • Функции поиска отложенного кода: повторное индексирование индекса поиска может занять несколько часов после переноса репозитория, а поиски кода могут возвращать непредвиденные результаты до завершения повторной индексации.
  • Наборы правил, настроенные для вашей организации, могут привести к сбою миграции: например, если вы настроили правило, требующее адреса электронной почты для автор фиксации @monalisa.catзаканчиваться, а репозиторий, с которым вы переносите, содержит фиксации, которые не соответствуют этому правилу, миграция завершится ошибкой. Дополнительные сведения о наборах правил см. в разделе Сведения о наборе правил.
  • Содержимое манекена может быть недоступен для поиска: Манекены являются заполнителями пользователей, к которым связан импортированный контент (например, проблемы, запросы на вытягивание, комментарии и т. д.). При поиске содержимого, связанного с манекеном, например назначенными проблемами, проблемы могут быть не найдены. После восстановления манекена содержимое должно быть найдено с помощью нового владельца. Дополнительные сведения см. в разделе Восстановление манекенов для GitHub Enterprise Importer.

Начало работы

Перед миграцией с Bitbucket Server необходимо спланировать, как будет выполняться миграция. Прежде чем переносить все данные, необходимо выбрать кого-то для запуска миграции. Необходимо предоставить пользователю необходимый доступ как для источника, так и для назначения миграции. Мы также рекомендуем сначала запустить пробную миграцию.

Общие сведения о процессе миграции с начала до конца см. в разделе Обзор миграции с Bitbucket Server на GitHub Enterprise Cloud.