Kód-összehasonlító (diff)
Hasonlítsd össze a kód két verzióját egymás mellett vagy soron belül, szintaxiskiemeléssel, sorszámokkal, szóközopciókkal és másolható egyesített diffel.
Hogyan hasonlíts össze két kódrészletet
- Illeszd be a régi verziót az Eredeti kód, az újat a Módosított kód mezőbe.
- Válaszd ki a Nyelv beállítást, vagy hagyd az Automatikus felismerés opciót: az eszköz a kód alapján tippel, és a felismert nyelvet a statisztika mellett mutatja.
- Válassz Nézetet: Egymás mellett vagy Soron belüli (egyesített).
- Állítsd be a szükséges opciókat: Szóközök és behúzás figyelmen kívül hagyása, Kis- és nagybetűk figyelmen kívül hagyása, Módosított szavak kiemelése és Csak a változások mutatása (3 sornyi környezettel).
- Kattints az Összehasonlítás gombra. Az első összehasonlítás után az eredmény gépelés közben követi a szerkesztéseidet.
- A Másolás egyesített diffként vagy a .diff letöltése gombbal a változást javítócsomagként (patch) használhatod fel újra.
Az Oldalak cseréje felcseréli a két verziót, így a hozzáadások törlésekké válnak, és fordítva.
A diff olvasása
Az eltávolított sorok pirosas, az eredetihez tartozó, a hozzáadott sorok zöldes, az új verzióhoz tartozó árnyalatot kapnak. Minden sor megtartja a saját fájljában érvényes sorszámát, így közvetlenül odaugorhatsz a szerkesztődben.
- Az Egymás mellett nézet a két fájlt két számozott oszlopban mutatja. A módosított sor az új változata mellett áll. A Módosított szavak kiemelése opcióval a soron belül megváltozott szavak ki vannak emelve; nélküle mindkét sor megtartja a teljes szintaxisszínezést.
- A Soron belüli (egyesített) nézet egyetlen oszlopot mutat, mint egy kódellenőrzés: minden módosított blokknál először az eltávolított (−), utána a hozzáadott (+) sorok állnak, a régi és az új sorszámmal együtt.
- A Csak a változások mutatása (3 sornyi környezettel) a hosszú változatlan szakaszokat egy „⋯ N változatlan sor” jelzőbe csukja, ami a nagy fájlok áttekintését jóval megkönnyíti.
A statisztikai sor megszámolja a hozzáadott, eltávolított és változatlan sorokat.
Szintaxiskiemelés
A kiemelést a böngésződben a highlight.js végzi. Csak a kiválasztott nyelv nyelvtana töltődik be, az első összehasonlításkor, így az oldal könnyű marad. A támogatott nyelvek közé tartozik a JavaScript, a TypeScript, a Python, a Java, a C#, a C / C++, a Go, a Rust, a PHP, a Ruby, a CSS, a HTML / XML, a JSON, a YAML, az SQL, a Bash / Shell és a Markdown. Az automatikus felismerés egyszerű támpontokat használ (kulcsszavak, zárójelek, JSON-elemzés); ha rosszul tippel, válaszd ki magad a nyelvet, vagy az Egyszerű szöveg opciót.
Szóközök, behúzás és sorvégek
A Szóközök és behúzás figyelmen kívül hagyása a sorokat a szélső szóközök levágása és a szóköz- és tabulátorsorozatok összevonása után hasonlítja össze, így egy 2-ről 4 szóközre vagy tabulátorokról szóközökre újrabehúzott fájl nem mutat különbséget. A Windows (CRLF) és a Unix (LF) sorvégeket az eszköz az összehasonlítás előtt egységesíti, ezért az a fájl, amelyben csak a sorvégek változtak, azonosnak minősül. Vedd figyelembe, hogy a szóközök számítanak a Pythonban, a YAML-ban és a Makefile-okban: kapcsold ki az opciót, ha a behúzás jelentéssel bír.
Az egyesített diff formátum
Az exportált patch a szabványos egyesített (unified) formátumot használja, amelyet a git apply, a patch és a kódellenőrző eszközök olvasnak: egy fejléc a két fájlnévvel, majd @@ -a,b +c,d @@ kezdetű részek (hunkok) minden változás körül három sornyi környezettel. A fájlok neve original és changed, a nyelvnek megfelelő kiterjesztéssel.
Gyakori kérdések
Feltöltődik a kódom egy szerverre?
Nem. Az összehasonlítás és a kiemelés is helyben, a böngésződben fut; a kód soha nem hagyja el az eszközödet.
Miben különbözik a szöveg-összehasonlítótól?
Ugyanazt a soronkénti összehasonlító motort használja, de kiegészíti szintaxiskiemeléssel, egyesített nézettel, a környezet összecsukásával és a kódra szabott szóközkezeléssel.
Miért jelez két módosított sort, ha azok egyformának tűnnek?
Valószínűleg láthatatlan karakterekben különböznek: sorvégi szóközökben, tabulátor és szóköz eltérésében vagy nem törhető szóközben. Jelöld be a Szóközök és behúzás figyelmen kívül hagyása opciót a megerősítéshez.
Alkalmazhatom a letöltött patchet Gittel?
Igen. Mentsd el, és futtasd a patch original.js < changes.diff parancsot, vagy igazítsd a fejléc fájlneveit, és használd a git apply parancsot.
Mekkora lehet a kódrészlet?
Több ezer sor is gyorsan összehasonlítható. Ha két nagyon nagy fájl teljesen különbözik, az eszköz néhány másodperc után leáll, és arra kér, hogy kisebb részeket hasonlíts össze.
Kapcsolódó eszközök
- Szövegösszehasonlító (diff) Hasonlíts össze két szöveget, és lásd minden különbséget egymás mellett vagy soron belül, sor, szó vagy karakter szerint. A böngésződben fut.
- JSON formázó és validátor Ingyenes JSON formázó és validátor, amely a böngésződben szépít, tömörít és ellenőriz JSON-t, a szintaxishibákat sor és oszlop szerint jelezve.
- Regex-teszter Tesztelj JavaScript reguláris kifejezéseket élőben: kiemelt találatok, rögzítő csoportok, csere és minden elem magyarázata közérthető nyelven.