Řešení konfliktů ve správě verzí Team Foundation
Publikováno: duben 2016
Velkou výhodou použití Team Foundation – správa verzí pro správu souborů je, že několik lidí může pracovat souběžně na souboru. Nevýhodou je, že někdy je třeba vyřešit konflikty dříve, než mohou získat, se změnami, unshelve, sloučit nebo vrátit soubory.
I když výskyt konfliktů může být frustrující, poskytuje tento systém informace a nástroje, které vám pomohou konflikty pochopit a vyřešit.
Řešení konfliktů
Automaticky rozpoznávat všechny konflikty
Automaticky sloučit individuální konflikt
Ruční vyřešení jednotlivého konfliktu
Pochopte automatické možnosti
Práce z příkazového řádku
Získejte tipy
Řešení konfliktů
Chcete-li vyřešit konflikty, ke kterým jsou blokování okno vyřešit konflikty.
Ve výchozím nastavení se v okně zobrazí pouze konflikty způsobené poslední operaci, o kterou jste se pokusili. Pokud je okno v tomto stavu, zobrazí se zpráva, která začíná: Filtr cesty použit. Chcete-li zobrazit všechny konflikty v pracovním prostoru, klikněte na příkaz Načíst všechny konflikty. Zobrazí se zpráva, která začíná: n konfliktů.
Uplynulo-li od změny v souborech v pracovním prostoru mnoho času, mohlo dojít k novým konfliktům. Chcete-li aktualizovat okno Vyřešit konflikty, zvolte možnost Aktualizovat.
Každý konflikt obsahuje informace a někdy odkazy, které vám mohou pomoci jej vyřešit. Chcete-li získat další informace, můžete vybrat konflikt a zvolit:
Historie, pokud chcete zobrazit historii souboru. Pokud je operací, která způsobila konflikt, sloučení nebo vrácení zpět, pak můžete použít ovládací prvek nabídky napravo od položky Historie a pak vybrat buď možnost Historie zdroje nebo Historie cíle.
Další informace naleznete v tématu Načtení historie položky.
Přidat poznámku k zobrazení podrobností o všech změnách, které byly provedeny na nejnovější verzi souboru, včetně toho, kdo jednotlivé změny provedl a kdy. Další informace naleznete v tématu Zobrazení změn v souboru s použitím funkce poznámek.
Porovnat (nebo otevřete nabídku na pravé straně tlačítka a vyberte příkaz). Otevře se okno Diff.
Automaticky rozpoznávat všechny konflikty
Ve výchozím nastavení se systém automaticky pokusí o Automaticky vyřešení všech konfliktů, pokud jste tuto možnost nevypnuli (viz Tipy). V okně Vyřešit konflikty můžete také ručně zvolit možnost Automaticky vyřešit všea pak zvolit:
Vyberte Všechny typy konfliktů, pokud se má systém pokusit vyřešit konflikty automaticky pomocí všech svých heuristických metod.
Vyberte Konkrétní typy konfliktů, pokud se má systém pokusit vyřešit konflikty, ale chcete vyloučit některé z heuristických metod.
Zobrazí se dialogové okno Vybrat konflikty k vyřešení. Zaškrtněte nebo zrušte zaškrtnutí možností, které chcete povolit nebo zakázat a pak zvolte možnost Automaticky vyřešit. Další informace naleznete v tématu Princip automatických možností níže.
Systém se pokusí automaticky rozpoznat konflikty zobrazené v okně čekající změny. Veškeré konflikty, které systém nebyl schopen vyřešit, zůstanou v okně. Je nutné ručně vyřešit tyto konflikty.
Automaticky sloučit jeden konflikt
Zvolte možnost AutoMerge, pokud chcete vyřešit vybrané konflikty pomocí všech možností AutoMerge popsaných níže v části Popis automatických možností.
Tip
Můžete stisknout a podržet klávesu Ctrl nebo Shift a pak vybrat více konfliktů.
Poznámka
Pokud je možnost AutoMerge zakázána, musí být tento konflikt vyřešen ručně.
Ruční vyřešení jednoho konfliktu
Pokud systém nemůže automaticky vyřešit konflikt nebo pokud chcete, mít přehled o tom, co se mění, musíte konflikt odstranit ručně. V rámci každého konfliktu systém zobrazí akce, které můžete provést k vyřešení konfliktu. Zobrazené akce, závisí na typu konfliktu a operaci, která způsobila konflikt.
Sloučit změny v nástroji sloučení
Když je konflikt způsoben konfliktními změnami obsahu, můžete vybrat Sloučit změny v nástroji sloučení.
Pokud zvolíte tuto akci, zobrazí se okno Sloučení.
Výsledek práce na řešení konfliktu je uveden v podokně Výsledky.
V tomto okně můžete:
Vyberte rozložení okna: Vertikální zobrazení, Vodorovné zobrazení, Kombinované zobrazení.
Procházejte rozdíly a konflikty.
Vyberte položky z levé a pravé verze souboru, chcete-li je zahrnout do výsledků.
Zadejte další obsah do souboru v podokně výsledků.
Zobrazte historii souboru. Další informace naleznete v tématu Načtení historie položky.
Porovnejte různé verze souboru.
Přidat poznámku k souboru, aby bylo vidět, kdo co změnil. Další informace naleznete v tématu Zobrazení změn v souboru s použitím funkce poznámek.
Pokud jste spokojeni s obsahem panelu Výsledek, zvolte možnost Přijmout sloučení.
Pochopte automatické možnosti
Ve zvláštních případech můžete chtít omezit typy konfliktů automaticky řešené možností Automatické vyřešení všech.
Při výběru možnosti Automaticky vyřešit všea pak Určité typy konfliktů, zobrazí se dialogové okno Vybrat konflikty k vyřešení.
Pokud má systém automaticky řešit konflikty, ke kterým došlo, protože... |
Jak je vysvětleno v tomto příkladu... |
Poté zaškrtněte toto políčko… |
---|---|---|
Nekonfliktní změny obsahu byly provedeny v jednotlivých verzích souboru |
Ve verzi souboru na levé straně byla na začátek přidána číslice nula. V souboru na pravé straně byla na konec přidána číslice tři: |
Konflikty při změnách v obsahu |
Byly provedeny změny obsahu, které jsou jedinečné pro pracovní prostor (během operace get nebo checkin) nebo cílovou verzi (během operace merge nebo rollback) |
Do verze pracovního prostoru nebo cíle byla přidána verze čtyři a pět: |
Konflikty se změnami obsahu provedenými pouze v místním pracovním prostoru nebo v cílové větvi |
Byly provedeny změny obsahu, které jsou jedinečné pro server (během operace get nebo checkin) nebo verzi zdroje (během operace merge nebo rollback) |
Do verze serveru nebo zdroje byla přidána verze čtyři a pět: |
Konflikty se změnami obsahu provedenými pouze ve verzi na serveru nebo ve zdrojové větvi |
Soubor na serveru (v průběhu operace get nebo vrácení se změnami) nebo ve větvi zdroje (během operace sloučení nebo vrácení) byl přejmenován. |
Rezervovali jste soubor, který má název launch.cs a pracovali jste na něm. Během této doby někdo jiný vrátil sady změn se změnami, které ovlivnily stejný soubor. Tato sada změn nezměnila obsah souboru, ale změnila název souboru na start.cs. |
Konflikty způsobené přejmenováním souboru ve verzi na serveru nebo ve zdrojové větvi |
|
Změny v každé verzi mají za následek stejný obsah souboru. Změny lze obsáhnout v souborech, jak je znázorněno v následujícím příkladu: Tato možnost také řeší konflikty, které jsou způsobeny všemi ostatními operacemi (například přejmenovat, odstranit, zrušit odstranění a větvit) a která má za následek stejné soubory. Tip Pokud toto políčko zaškrtnete, když budete pokračovat, systém vyřeší tyto změny převzetím (stažením) verze na serveru do vašeho pracovního prostoru. |
Konflikty způsobené stejnými změnami na serveru a pracovním prostoru |
Práce z příkazového řádku
Tipy
Ve výchozím nastavení se systém automaticky pokusí o Automatické vyřešení všech konfliktů. Chcete-li změnit možnost, zvolte z nabídky panelu Nástroje, Možnostia pak v dialogovém okně Možnosti, přejděte na možnost Správa zdrojových souborů, Visual Studio Team Foundation Server. Vymažte pole Pokusit se o automatické vyřešení konfliktů při jejich vzniku.
Potřebuje váš tým spolupracovat ve snaze odstranit velký počet konfliktů (například ty, ke kterým může dojít po sloučení v rozsáhlém základu kódu)? V takovém případě může pomoci veřejný pracovní prostor na sdíleném vývojovém počítači. Další informace naleznete v tématu Vytváření pracovních souborů a práce s nimi.