{"id":4978,"date":"2026-08-31T20:52:38","date_gmt":"2026-08-31T20:52:38","guid":{"rendered":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/2026\/08\/31\/enterprise-live-migrations-is-now-in-public-preview\/"},"modified":"2026-08-31T20:52:38","modified_gmt":"2026-08-31T20:52:38","slug":"enterprise-live-migrations-is-now-in-public-preview","status":"publish","type":"post","link":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/2026\/08\/31\/enterprise-live-migrations-is-now-in-public-preview\/","title":{"rendered":"Enterprise Live Migrations is now in public preview"},"content":{"rendered":"<p><strong>Move Azure DevOps repositories to GitHub Enterprise Cloud with data residency while minimizing disruption<\/strong><\/p>\n<p>Over the last several years, we\u2019ve encouraged customers to move their repositories from Azure Repos to GitHub to take advantage of the latest AI-powered and agentic development experiences. We know that making this move at enterprise scale isn\u2019t always straightforward. Critical repositories can\u2019t simply be taken offline for days, and large migrations often require complex coordination and extended development freezes.<\/p>\n<p>ELM is designed to make these migrations more predictable, with minimal disruption to development. Migrations start while the Azure DevOps repository remains available to developers, and changes are continuously synchronized to GitHub Enterprise Cloud with data residency in the background. Teams can then schedule a cutover when they\u2019re ready, with a final synchronization and a brief downtime window \u2013 typically less than 30 minutes for most repositories. This gives organizations the flexibility to migrate at their own pace, without requiring an all-at-once migration or an extended development freeze.<\/p>\n<p>We\u2019d also like to thank the customers who participated in our private preview and shared their feedback with us. Your input helped us improve ELM and shape the experience we\u2019re making available today in public preview.<\/p>\n<h3>How ELM works<\/h3>\n<p>ELM is available through both the Azure DevOps CLI and web UI, giving teams the flexibility to automate migrations with scripts or use a guided experience. ELM provides a controlled, staged workflow:<\/p>\n<ul>\n<li>Validate: Confirm that the source repository is ready for migration.<\/li>\n<li>Synchronize: Migrate repository data and continuously sync changes while development continues.<\/li>\n<li>Cut over: Perform the final synchronization and complete the migration when the team is ready.<\/li>\n<\/ul>\n<p><img data-opt-id=713919455  fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2026\/08\/ELM-ADO-Portal.webp\" alt=\"ELM Azure DevOps Portal\" \/><\/p>\n<p><img data-opt-id=1358049173  fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/devops\/wp-content\/uploads\/sites\/6\/2026\/08\/ELM-CLI-scaled.webp\" alt=\"ELM CLI\" \/><\/p>\n<p>Please note that ELM supports GitHub Enterprise Cloud with data residency. It does not currently support standard GitHub Enterprise Cloud. The easiest way to identify which GitHub Enterprise Cloud offering you use is to check your GitHub URL:<\/p>\n<ul>\n<li><strong>ghe.com<\/strong>: GitHub Enterprise Cloud with data residency (supported by ELM)<\/li>\n<li>github.com: Standard GitHub Enterprise Cloud (not currently supported by ELM)<\/li>\n<\/ul>\n<h3>What you can migrate with ELM<\/h3>\n<p>ELM supports:<\/p>\n<ul>\n<li>Repositories, commit history, branches, and tags<\/li>\n<li>Branch policies converted to GitHub rulesets<\/li>\n<li>Pull request metadata, comments, and user history<\/li>\n<li>Coordinated multi-repository migrations<\/li>\n<\/ul>\n<p>ELM does not migrate work items, pipeline definitions, releases, wikis, test artifacts, or Azure Artifacts.<\/p>\n<h3>Continue using Azure DevOps where it makes sense<\/h3>\n<p>Moving your source code to GitHub doesn\u2019t mean you have to move everything else at the same time. ELM helps organizations transition incrementally while keeping Azure DevOps and GitHub connected.<\/p>\n<ul>\n<li><strong>Keep Azure Pipelines running<\/strong>: ELM can rewire Azure Pipelines to use the migrated GitHub repository. During migration, cloned pipelines let teams validate builds and deployments before cutover. At cutover, the original pipelines can be rewired to GitHub.<\/li>\n<li><strong>Continue using Azure Boards<\/strong>: Teams can continue using Azure Boards for planning and work tracking while developers use GitHub for source control and pull requests.<\/li>\n<\/ul>\n<p>Together, these capabilities let organizations move their repositories to GitHub while continuing to use Azure DevOps capabilities where they make sense, without requiring a big-bang migration.<\/p>\n<h3>Get started<\/h3>\n<p>Ready to start your migration journey? Visit <a href=\"https:\/\/learn.microsoft.com\/azure\/devops\/repos\/enterprise-live-migrations\/overview?view=azure-devops\">https:\/\/aka.ms\/adoELM<\/a> to learn more, review prerequisites, and get started with Enterprise Live Migrations.<\/p>\n<p>The post <a href=\"https:\/\/devblogs.microsoft.com\/devops\/enterprise-live-migrations-public-preview\/\">Enterprise Live Migrations is now in public preview<\/a> appeared first on <a href=\"https:\/\/devblogs.microsoft.com\/devops\">Azure DevOps Blog<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Move Azure DevOps repositories to GitHub Enterprise Cloud with data residency while minimizing disruption Over the last several years, we\u2019ve [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4979,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[3],"tags":[],"class_list":["post-4978","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-azure"],"_links":{"self":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts\/4978","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/comments?post=4978"}],"version-history":[{"count":0,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts\/4978\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/media\/4979"}],"wp:attachment":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/media?parent=4978"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/categories?post=4978"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/tags?post=4978"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}