Zdieľať cez


Konfliktov

Konflikt nastane, keď sa vykonajú zmeny rovnakej položky v pracovnom priestore aj vo vzdialenom odkladacom priestore Git. Keď nastane konflikt, v stave Git sa zobrazí hlásenie Conflict (Konflikt ) a Commit (Potvrdiť) je zakázané.

Snímka obrazovky zostavy so stavom Git, ktorý hovorí konflikt.

Keď v prípade konfliktu vyberiete položku Aktualizovať , zobrazí sa hlásenie s upozornením, že musíte vyriešiť dané konflikty ešte pred aktualizáciou.

Snímka obrazovky znázorňujúca chybové hlásenie z karty zdrojového ovládacieho prvku informujúce o konfliktoch.

Existujú tri spôsoby riešenia konfliktu:

Riešenie konfliktu v používateľskom rozhraní

Ak chcete zobraziť zoznam všetkých položiek, ktoré majú konflikt, vyberte položku Aktualizovať všetko . Potom môžete vybrať, ktorú verziu si ponecháte pre každú položku. Pre každú konfliktnú položku sa môžete rozhodnúť prijať prichádzajúce zmeny z odkladacieho priestoru Git alebo si ponechať aktuálnu verziu, ktorá je v pracovnom priestore.

Snímka obrazovky zobrazujúca používateľské rozhranie s cieľom vybrať verziu konfliktnej položky, ktorá sa má ponechať.

  • Výberom položky Prijať prichádzajúce zmeny prepíšete zmeny v pracovnom priestore. Zmeny pracovného priestoru sa stratia a stav systému Git sa v prípade úspešného importu zmení na synchronizovaný .

  • Vyberte možnosť Zachovať aktuálny obsah , aby sa verzia momentálne nachádzala v pracovnom priestore. Po dokončení aktualizácie sa stav systému Git zmení na neodstraňujúci zmeny , pretože zmeny v pracovnom priestore ešte nie sú viazané na vetvu.

Návrat k predchádzajúcemu stavu

Môžete vrátiť buď celý pracovný priestor, alebo vetvu Git do naposledy synchronizovaného stavu. Ak vrátite vetvu Git na predchádzajúce potvrdenie, stále môžete vidieť zmeny vykonané v nesynchronizovanej vetve. Ak vrátite pracovný priestor, stratíte všetky zmeny vykonané v pracovnom priestore od posledného potvrdenia.

Ak sa chcete vrátiť k predchádzajúcemu synchronizovanému stavu, vykonajte jednu z nasledujúcich akcií:

  • Pomocou príkazu Späť sa vrátia konfliktné položky v pracovnom priestore do posledného synchronizovaného stavu.
  • Vrátenie sa k poslednému synchronizovanému stavu v službe Git pomocou príkazu v službe git revert Azure DevOps.

Konflikty môžete vyriešiť aj odpojením a opätovným pripojením pracovného priestoru. Keď sa opätovne pripojíte, vyberte smer, ktorým sa má synchronizovať. Upozorňujeme však, že pri opätovnom pripojení sa prepíšu všetky položky v pracovnom priestore alebo vetve, a nie len tie konfliktné. Nevracia pracovný priestor ani vetvu do posledného synchronizovaného stavu. Obsah sa skôr prepíše na jednom mieste s obsahom druhého.

Riešenie konfliktu v gitu

Ak si nie ste istí, aké zmeny boli vykonané a ktorá verzia si má vybrať a nechcete sa vrátiť na predchádzajúci stav, môžete skúsiť vyriešiť konflikt v odkladacom priestore Git vytvorením novej vetvy, vyriešením konfliktu v danej vetve a jeho synchronizáciou s aktuálnou vetvou.

Poznámka

Znova pripojiť pracovný priestor k novej vetve môže len správca pracovného priestoru.

  1. Na paneli Ovládací prvok Zdroj skontrolujte novú vetvu pomocou ID poslednej synchronizovanej vetvy zobrazenej v dolnej časti obrazovky

    Snímka obrazovky, ktorá znázorňujúca vzatie novej vetvy z panela ovládacieho prvku Zdroj výberom šípky nadol.

    Snímka obrazovky znázorňujúca informácie o ID vetvy zobrazené v dolnej časti obrazovky.

    Tento krok vytvorí novú vetvu z konfliktnej vetvy pomocou posledného synchronizovaného stavu Git pred vykonaním zmien, ktoré sú v rozpore s vašimi zmenami. Zmeny sa zobrazia na ovládacom paneli Zdroj, ale z vetvy Git nie je čo aktualizovať. Vetva vzatie z projektu zachová aktuálny stav pracovného priestoru, takže pri zmene vetvy sa zachovajú nevydané zmeny.

  2. Potvrdiť zmeny do novej vetvy. Táto nová vetva teraz obsahuje zmeny, ktoré ste vykonali v položkách pripojených k predchádzajúcej verzii vetvy Git, ktorá nie je v rozpore s vašimi zmenami.

  3. V službe git vyriešite konflikty medzi pôvodnou vetvou a novou vetvou.

  4. V gitu zlúčte novú vetvu do pôvodnej vetvy

  5. V službe Fabric prepnite pracovný priestor späť na pôvodnú vetvu.