Szöveg diff checker

Hasonlíts össze két szöveget vagy kódrészletet soronként. A hozzáadott, törölt és módosított sorok kiemelve jelennek meg, egészen a pontosan eltérő szavakig.

A böngésződben futNincs regisztrációNincs feltöltés

Illessz be szöveget mindkét mezőbe a különbségek megtekintéséhez.

Hogyan használd: Szöveg diff checker

  1. Illeszd be bal oldalra az eredeti, jobb oldalra a módosított szöveget, vagy nyiss meg két fájlt.
  2. Az összehasonlítás gépelés közben frissül. Válaszd az Egymás mellett vagy az Egyesített nézetet.
  3. Jelöld be a Szóközök figyelmen kívül hagyása, a Kis-/nagybetű figyelmen kívül hagyása vagy az Üres sorok figyelmen kívül hagyása opciót, hogy elrejtsd a zajt, például az újrabehúzást.
  4. A Változatlanok elrejtése opcióval a változásokra fókuszálhatsz, mindegyik körül három sor kontextussal.
  5. Kattints a Másolás patchként vagy a .diff letöltése gombra, hogy szabványos unified diffet kapj, amelyet a git apply vagy a patch paranccsal alkalmazhatsz.

Hogyan működik ez a diff checker?

Az eszköz mindkét bemenetet sorokra bontja, és lefuttatja a Myers-féle különbségkereső algoritmust, ugyanazt az O(ND) algoritmust, amelyet a git diff és a GNU diff is használ. Megkeresi a beszúrások és törlések legrövidebb sorozatát, amely az eredetiből a módosított szöveget állítja elő, így az eredmény a lehető legkevesebb módosított sort mutatja. Az azonos kezdő és záró sorokat előbb kihagyja, így a több ezer soros fájlok összehasonlítása is szinte azonnali.

Ha egy törölt és egy hozzáadott sor egymás mellett áll, módosított sorként párosítja őket, és szavanként újra összehasonlítja. A ténylegesen megváltozott szavak erősebb kiemelést kapnak, így egy átnevezett változó vagy egy átírt szám egy hosszú sorban is kitűnik.

Egymás melletti vagy egyesített nézet

Az Egymás mellett nézet bal oldalra az eredetit, jobb oldalra az új verziót teszi, mindkettőt sorszámokkal. Ez a legkényelmesebb nézet szövegek, konfigurációs fájlok és rövid kódváltozások átnézéséhez. Az Egyesített nézet egy oszlopban váltogatja a törölt (-) és a hozzáadott (+) sorokat; ezt a formátumot használják a kódátnéző eszközök és a patchfájlok.

Unified diff (patch) formátum

Az exportált patch a diff -u formátumot követi: egy ---/+++ fejléc, majd @@ -l,s +l,s @@ kezdetű hunkok, ahol az l az első sor száma, az s pedig a hunk sorainak száma az egyes fájlokban. Minden hunk három sor változatlan kontextust tartalmaz, így a patch -p0 vagy a git apply paranccsal akkor is alkalmazható, ha a közeli sorok elmozdultak.

Mikor használd a figyelmen kívül hagyási opciókat?

  • Szóközök figyelmen kívül hagyása: azonosnak tekinti azokat a sorokat, amelyek csak szóközökben vagy tabokban térnek el. Kód újrabehúzása vagy tabok szóközre cserélése után hasznos.
  • Kis-/nagybetű figyelmen kívül hagyása: jól jön SQL-, HTML- és naplófájloknál, ahol a kis- és nagybetű nem számít.
  • Üres sorok figyelmen kívül hagyása: elrejti azokat a sorokat, amelyeket csak térközként adtak hozzá vagy töröltek.

Gyakran ismételt kérdések

Feltöltődik valahova a szövegem?
Nem. Az összehasonlítás teljes egészében a böngésződben, JavaScripttel fut. Semmi, amit beillesztesz, nem kerül szerverre, így nyugodtan összehasonlíthatsz privát kódot, szerződéseket vagy konfigurációs fájlokat.
Mekkorák lehetnek a szövegek?
A több tízezer soros fájlok összehasonlítása egy átlagos laptopon jóval egy másodperc alatt lefut. Mivel az algoritmus költsége az eltérések számával nő, két hatalmas, teljesen eltérő fájl tart a legtovább.
Összehasonlíthatok két fájlt beillesztés helyett?
Igen. Az egyes mezők fölötti Fájl megnyitása gombokkal helyi fájlt tölthetsz be. A fájlt a böngésződ olvassa be, és sosem töltjük fel.
Miért jelenik meg egy sor töröltként és hozzáadottként módosított helyett?
A sorok csak akkor párosulnak „módosított” sorként, ha egy törölt sorokból álló blokk közvetlenül egy hozzáadott sorokból álló blokk mellett áll. Ha a két sorban nagyon kevés a közös szöveg, a szószintű kiemelés elmarad, mert zavaróbb lenne, mint a teljes sort módosítottként mutatni.
Hogyan hasonlíthatok össze JSON objektumokat?
Használd a JSON Diff eszközt. Ez a feldolgozott struktúrát hasonlítja össze, így a kulcssorrend és a formázás nem okoz hamis eltéréseket, és pontosan felsorolja a megváltozott útvonalakat.

Kapcsolódó eszközök