Skip to main content

Импорт репозитория система управления версиями Team Foundation

Репозиторий можно импортировать из система управления версиями Team Foundation (TFVC), преобразовав репозиторий в Git, а затем отправить репозиторий в GitHub Enterprise Server.

Сведения о импорте из система управления версиями Team Foundation

Мы рекомендуем использовать Azure Repos для преобразования репозитория система управления версиями Team Foundation (TFVC) в Git. Однако Azure Repos выполняет миграцию только до 180 дней журнала. Если вы хотите сохранить больше журнала, вместо этого можно использовать git-tfs .

Примечание. Azure Repos переносит только до 180 дней журнала. Состояние репозитория до 180-дневного порога будет перенесено в одну начальную фиксацию. Дополнительные сведения о сохранении журнала см. в разделе "Миграция с git-tfsпомощью ".

Чтобы выполнить следующие действия, необходимо использовать систему macOS или Linux и установить следующие средства:

  1. Создайте новый репозиторий на GitHub. Чтобы избежать ошибок, не инициализировать новый репозиторий с помощью README, лицензий или файлов Gitignore. Эти файлы можно добавить после отправки проекта в GitHub Enterprise Server. Дополнительные сведения см. в разделе Создание репозитория.

  2. Чтобы убедиться, что на компьютере установлена Git, выполните команду git --version.

    Выходные данные должны быть похожи git version 2.40.0на .

  3. Чтобы убедиться, что на компьютере git lfs --versionустановлен Git LFS .

    Выходные данные должны быть похожи git-lfs/3.1.4 (GitHub; darwin arm64; go 1.18.1)на .

  4. Преобразуйте репозиторий TFVC в Git с помощью Azure Repos. Инструкции см. в разделе "Импорт репозиториев из TFVC в Git " в Microsoft Learn.

  5. Чтобы клонировать репозиторий Azure Repos на локальный компьютер, запустите и git clone --mirror URLзамените URL-адрес клона URL-адресом репозитория Azure DevOps.

    Чтобы определить URL-адрес клона для репозитория Azure DevOps, ознакомьтесь с url-адресом клонирования репозитория Azure Repos Git в Microsoft Learn.

  6. Чтобы добавить репозиторий GitHub в качестве удаленного, выполните командуgit remote add origin URL, заменив URL URL-адрес для созданного ранее репозитория GitHub .https://github.com/octocat/example-repository.git

  7. Чтобы отправить репозиторий в GitHub, выполните команду git push --mirror origin.

    Если репозиторий содержит все файлы, размер которых превышает GitHub Enterprise Server, может завершиться ошибкой. Переместите большие файлы на Git LFS , выполнив команду git lfs import, а затем повторите попытку.

Миграция с помощью git-tfs

При миграции git-tfsвы сохраните полную историю репозитория TFVC.

Чтобы выполнить следующие действия, необходимо использовать Windows и установить следующие средства:

  1. Создайте новый репозиторий на GitHub. Чтобы избежать ошибок, не инициализировать новый репозиторий с помощью README, лицензий или файлов Gitignore. Эти файлы можно добавить после отправки проекта в GitHub Enterprise Server. Дополнительные сведения см. в разделе Создание репозитория.

  2. Чтобы убедиться, что на компьютере установлена Git, выполните команду git --version.

    Выходные данные должны быть похожи git version 2.40.0на .

  3. Чтобы убедиться, что git-tfs на компьютере установлено, выполните команду git tfs --version.

    Выходные данные должны начинаться с аналогичного git-tfs version 0.32.0.0 (TFS client library 16.0.0.0 (MS)).

    Если вы получаете выходные данные, аналогичные Unable to load DLL 'Microsoft.VisualStudio.Setup.Configuration.Native.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)выходным данным, убедитесь, что Visual Studio Team Explorer правильно установлен.

  4. Чтобы убедиться, что на компьютере git lfs --versionустановлен Git LFS .

    Выходные данные должны быть похожи git-lfs/3.1.4 (GitHub; darwin arm64; go 1.18.1)на .

  5. Если вы еще не сделали этого, настройте Git с именем и адресом git config --global user.name "NAME" git config --global user.email EMAILэлектронной почты, выполнив и заменив ИМЯ именем и адресом электронной почты.

  6. Запустите git tfs clone, передав URL-адрес репозитория TFVC и путь репозитория в качестве аргументов. Например, чтобы преобразовать репозиторий из https://dev.azure.com/octocat репозитория в репозиторий example Git, хранящийся в каталоге/example, выполните командуgit tfs clone --branches=all https://dev.azure.com/octocat $/example.

  7. Чтобы добавить репозиторий GitHub в качестве удаленного, выполните командуgit remote add origin URL, заменив URL URL-адрес для созданного ранее репозитория GitHub .https://github.com/octocat/example-repository.git

  8. Чтобы отправить репозиторий в GitHub, выполните команду git push --mirror origin.

    Если репозиторий содержит все файлы, размер которых превышает GitHub Enterprise Server, может завершиться ошибкой. Переместите большие файлы на Git LFS , выполнив команду git lfs import, а затем повторите попытку.