Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020
Kód můžete migrovat z existujícího úložiště TFVC (Team Foundation Version Control) do nového úložiště Git ve stejné organizaci. Migrace na Git je složitý proces pro velká úložiště TFVC a týmy. Centralizované systémy správy verzí, jako je TFVC, se chovají odlišně od Gitu základními způsoby. Přechod zahrnuje mnohem víc než pouhé naučení se nových příkazů. Je to rušivá změna, která vyžaduje pečlivé plánování. Potřebujete uvažovat o:
- Revize nástrojů a procesů
- Odebrání binárních a spustitelných souborů
- Trénování vašeho týmu
Požadavky
| Kategorie | Požadavky |
|---|---|
| Přístup k projektu | Člen projektu. |
| Oprávnění | - Zobrazit kód v soukromých projektech: Alespoň Základní přístup. - Klonování nebo přispívání do kódu v soukromých projektech: Člen skupiny zabezpečení Contributors nebo osoba s odpovídajícími oprávněními v projektu. – Nastavte oprávnění pro větev nebo úložiště: Správa oprávnění oprávnění pro větev nebo úložiště. – Změnit výchozí větev: Upravit zásady oprávnění pro úložiště. – Import úložiště: Člen skupiny zabezpečení Projektoví administrátoři nebo oprávnění Vytvořit úložiště na úrovni projektu Git nastavená na Povolit. Další informace najdete v tématu Nastavení oprávnění úložiště Git. |
| Služby | Repozitáře povoleny. |
| Nástroje | Volitelný. Použijte příkazy az repos: Azure DevOps CLI. |
Poznámka:
Ve veřejných projektech mají uživatelé s přístupem Stakeholder plný přístup do Azure Repos, kde mohou zobrazovat, klonovat a přispívat ke kódu.
| Kategorie | Požadavky |
|---|---|
| Přístup k projektu | Člen projektu. |
| Oprávnění | - Zobrazit kód: Alespoň základní přístup. - Klonování nebo přispívání do kódu: Člen skupiny zabezpečení Přispěvatelé nebo odpovídající oprávnění v rámci projektu. |
| Služby | Repozitáře povoleny. |
Před zahájením migrace důrazně doporučujeme přečíst centralizovanou správu verzí do Gitu a část Migrace z TFVC na Git .
Prostředí pro import je ideální pro malá a jednoduchá úložiště TFVC. Je také vhodný pro úložiště, která už jsou čistá, jak je uvedeno v části Centralizovaná správa verzí do Gitu a migrace z TFVC do Gitu . Tyto části také doporučují další nástroje pro pokročilejší konfigurace úložiště TFVC.
Důležité
Vzhledem k rozdílům v tom, jak TFVC a Git ukládají historii správy verzí, doporučujeme nemigrovat historii, což je přístup, který Microsoft použil při migraci Windows a dalších produktů z centralizované správy verzí do Gitu.
Import úložiště
Vyberte Úložiště, Soubory.
V rozevíracím seznamu úložiště vyberte Importovat úložiště.
V rozevíracím seznamu Typ zdroje vyberte TFVC.
Zadejte cestu k úložišti / větvi / složce, kterou chcete importovat do úložiště Git. Například
$/Fabrikam/FabrikamWebsitePokud chcete migrovat historii z úložiště TFVC, vyberte Historii migrace a vyberte počet dní. Můžete migrovat až 180 dní historie, počínaje od nejnovější sady změn. Odkaz na úložiště TFVC se přidá ve zprávě potvrzení první sady změn, která se migruje do Gitu, což usnadňuje vyhledání starší historie v případě potřeby.
Pojmenujte nové úložiště Git a vyberte Importovat. V závislosti na velikosti importu bude vaše úložiště Git připravené během několika minut.
Řešení problémů
Toto prostředí je optimalizované pro malá, jednoduchá úložiště TFVC nebo úložiště, která jsou připravená na migraci. To znamená, že má několik omezení.
- Migruje pouze obsah kořene nebo větve. Pokud máte například projekt TFVC, ve
$/Fabrikamkterém je jedna větev a jedna složka, cesta k importu$/Fabrikamby tuto složku naimportovala, zatímco$/Fabrikam/<branch>by importovala jenom větev. - Importované úložiště a přidružená historie (pokud jsou importované) nesmí překročit velikost 1 GB.
- Historii můžete importovat až 180 dnů.
Pokud některé z dříve uvedených informací jsou pro import blokátorem, doporučujeme vyzkoušet externí nástroje, jako je Git-TFS , pro import a čtení našich dokumentů white paper – Centralizovaná správa verzí do Gitu a následující část Migrace z TFVC do Gitu .
Důležité
Používání externích nástrojů, jako je Git-TFS s produkty, službami nebo platformami Microsoftu, je zcela zodpovědností uživatele. Společnost Microsoft neschválila, nepodporuje ani nezaručuje funkčnost, spolehlivost ani zabezpečení takových rozšíření jiných společností než Microsoft.
Migrace z TFVC na Git
Než budete migrovat zdrojový kód z centralizovaného systému správy verzí do Gitu, seznamte se s rozdíly mezi nimi a připravte se na migraci.
Požadavky
Pro usnadnění migrace je třeba splnit mnoho požadavků před tím, než budete postupovat podle postupu importování úložiště v předchozí části tohoto článku.
- Migrujte jenom jednu větev. Při plánování migrace zvolte novou strategii větvení pro Git. Migrace pouze hlavní větve podporuje pracovní postup založený na tématu, jako je Gitflow nebo GitHub Flow.
- Proveďte migraci typu tip, například importujte pouze nejnovější verzi zdrojového kódu. Pokud je historie TFVC jednoduchá, můžete se rozhodnout migrovat určitou historii, až 180 dní, aby tým mohl pracovat jenom z Gitu. Další informace najdete v tématu Plánování migrace na Git.
- Vylučte binární prostředky, jako jsou obrázky, vědecké datové sady nebo herní modely z úložiště. Tyto prostředky by měly používat rozšíření Git LFS (Large File Storage), které nástroj pro import nekonfiguruje.
- Ponechte importované úložiště nižší než 1 GB.
Pokud úložiště tyto požadavky nesplňuje, použijte k migraci nástrojGit-TFS .
Důležité
Používání externích nástrojů, jako je Git-TFS s produkty, službami nebo platformami Microsoftu, je zcela zodpovědností uživatele. Společnost Microsoft neschválila, nepodporuje ani nezaručuje funkčnost, spolehlivost ani zabezpečení takových rozšíření jiných společností než Microsoft.
Migrovat
Proces migrace z TFVC je jednoduchý:
- Podívejte se na nejnovější verzi větve z TFVC na místním disku.
- Odeberte binární soubory a nástroje sestavení z úložiště a nastavte systém pro správu balíčků, jako je NuGet.
- Převeďte direktivy konfigurace specifické pro správu verzí. Například převést
.tfignoresoubory na.gitignore, a převést.tpattributessoubory na.gitattributes. - Zkontrolujte změny a proveďte migraci na Git.
Kroky 1 až 3 jsou volitelné. Pokud se v úložišti nenacházejí binární soubory a není potřeba nastavovat .gitignore ani .gitattributes, můžete pokračovat přímo ke kroku zkontrolujte změny a proveďte migraci.
Podívejte se na nejnovější verzi
Vytvořte nový pracovní prostor a namapujte pracovní složku pro adresář serveru, který se migruje do Gitu. Tato akce nevyžaduje úplné mapování pracovních složek. Mapovat pouze ty složky, které obsahují binární soubory určené k odstranění z úložiště, a mapovat složky, které obsahují konfigurační soubory specifické pro systém správy verzí, jako .tfignore.
Jakmile je mapování nastaveno, získejte složku lokálně.
tf get /version:T /recursive
Odebrání binárních souborů a nástrojů sestavení
Vzhledem k tomu, že Git ukládá historii změněných souborů tím, že každému vývojáři poskytne kopii každého souboru v historii, může vrácení binárních souborů přímo do úložiště způsobit, že se úložiště rychle zvětšuje a povede k problémům s výkonem.
V případě nástrojů sestavení a závislostí, jako jsou knihovny, využijte řešení balení s podporou správy verzí, jako je NuGet. Mnoho opensourcových nástrojů a knihoven je již k dispozici v galerii NuGet, ale pro proprietární závislosti vytvořte nové balíčky NuGet.
Jakmile se závislosti přesunou do NuGetu, ujistěte se, že nejsou zahrnuty v úložišti Git, tím že je přidáte do .gitignore.
Převod konfigurace specifické pro správu verzí
Správa verzí Team Foundation poskytuje .tfignore soubor, který zajišťuje, že se určité soubory nepřidají do úložiště TFVC. Můžete použít soubor .tfignore pro automaticky generované soubory, jako je výstup sestavení, aby nebyly omylem commitnuty.
Pokud projekt spoléhá na toto chování, převeďte .tfignore soubor na .gitignore soubor.
Klienti TFVC pro různé platformy také poskytují podporu pro .tpattributes soubor, který určuje, jak se soubory ukládají na místní disk nebo se zapisují do úložiště. Pokud se používá .tpattributes soubor, převeďte ho na .gitattributes soubor.
Odeslání změn a provedení migrace
Zkontrolujte všechny změny, které odeberou binární soubory, migrují do správy balíčků nebo převedou konfiguraci specifickou pro správu verzí. Jakmile provedete tuto konečnou změnu v TFVC, můžete provést import.
Pokročilé migrace
NástrojGit-TFS je obousměrný most mezi TFVS a Gitem a můžete ho použít k provedení migrace. Git-TFS je vhodná pro migraci s úplnou historií, více než 180 dnů, které nástroj Import podporuje. Nebo můžete použít Git-TFS k pokusu o migraci, která zahrnuje více větví a slučovacích relací.
Než se pokusíte o migraci pomocí Git-TFS, mějte na paměti následující základní rozdíly ve způsobu, jakým TFVC a Git uchovávají historii:
- Git ukládá historii jako snímek úložiště v čase, zatímco TFVC zaznamenává diskrétní operace, ke kterým došlo v souboru. Typy změn v TFVC, jako je přejmenování, zrušení odstranění a vrácení zpět, nelze v Gitu vyjádřit. Místo toho, aby se vidělo, že soubor
Abyl přejmenován na souborB, sleduje pouze, že souborAbyl odstraněn a souborBbyl přidán ve stejném commitu. - Git nemá přímý ekvivalent štítku TFVC. Popisky můžou obsahovat libovolný počet souborů v libovolné konkrétní verzi a můžou odrážet soubory v různých verzích. I když jsou značky Git koncepčně podobné, odkazují na snímek celého úložiště v určitém okamžiku. Pokud projekt spoléhá na popisky TFVC, aby věděl, co bylo doručeno, značky Git tyto informace nemusí poskytovat.
- Sloučení v TFVC probíhá na úrovni souboru, ne v celém úložišti. Z jedné větve do druhé je možné sloučit pouze podmnožinu změněných souborů. Zbývající změněné soubory se pak můžou sloučit v následující sadě změn. Sloučení v Gitu ovlivňuje celé úložiště a obě sady jednotlivých změn se nedají považovat za sloučení.
Vzhledem k těmto rozdílům doporučujeme provést migraci tipu a zachovat úložiště TFVC online, ale jen pro čtení, abyste si mohli zobrazit historii.
Pokud se chcete pokusit o pokročilou migraci pomocí Git-TFS, podívejte se na klonování jedné větve s historií nebo klonování všech větví s historií sloučení.
Důležité
Používání externích nástrojů, jako je Git-TFS s produkty, službami nebo platformami Microsoftu, je zcela zodpovědností uživatele. Společnost Microsoft neschválila, nepodporuje ani nezaručuje funkčnost, spolehlivost ani zabezpečení takových rozšíření jiných společností než Microsoft.
Aktualizace pracovního postupu
Přechod z centralizovaného systému správy verzí na Git je více než jen migrace kódu. Tým potřebuje školení, aby porozuměl tomu, jak se Git liší od stávajícího systému správy verzí a jak tyto rozdíly ovlivňují každodenní práci.
Přečtěte si další informace o migraci z centralizované správy verzí na Git.