Porovnanie kódu (diff)
Porovnaj dve verzie kódu vedľa seba alebo v jednom stĺpci, so zvýraznením syntaxe, číslami riadkov, možnosťami pre medzery a unified diff na kopírovanie.
Ako porovnať dva kusy kódu
- Vlož starú verziu do Pôvodný kód a novú verziu do Zmenený kód.
- Vyber Jazyk, alebo nechaj Rozpoznať automaticky: nástroj odhadne jazyk z kódu a zobrazí ho vedľa štatistiky.
- Zvoľ Zobrazenie: Vedľa seba alebo V jednom stĺpci (unified).
- Nastav potrebné voľby: Ignorovať medzery a odsadenie, Ignorovať veľkosť písmen, Zvýrazniť zmenené slová a Zobraziť iba zmeny (3 riadky kontextu).
- Klikni na Porovnať. Po prvom porovnaní sa výsledok mení spolu s tvojimi úpravami.
- Kliknutím na Kopírovať ako unified diff alebo Stiahnuť .diff môžeš zmenu použiť ako záplatu.
Vymeniť strany vymení obe verzie, čím sa pridania zmenia na odstránenia a naopak.
Ako čítať diff
Odstránené riadky sú zafarbené načerveno a patria pôvodnej verzii, pridané riadky sú zafarbené nazeleno a patria novej verzii. Každý riadok si zachováva číslo riadka zo svojho súboru, takže v editore na neho skočíš priamo.
- Vedľa seba zobrazí oba súbory v dvoch očíslovaných stĺpcoch. Upravený riadok stojí vedľa svojej novej verzie. So Zvýrazniť zmenené slová sú označené slová, ktoré sa v riadku zmenili. Bez tejto voľby si oba riadky zachovajú plné farby syntaxe.
- V jednom stĺpci (unified) ukazuje jeden stĺpec ako pri revízii kódu: pri každom zmenenom bloku najprv odstránené riadky (−), potom pridané riadky (+), s pôvodnými aj novými číslami riadkov.
- Zobraziť iba zmeny (3 riadky kontextu) zbalí dlhé nezmenené úseky do značky „⋯ nezmenených riadkov: N“, vďaka čomu sa veľké súbory kontrolujú oveľa ľahšie.
Riadok štatistiky počíta pridané, odstránené a nezmenené riadky.
Zvýrazňovanie syntaxe
Zvýrazňovanie prebieha v tvojom prehliadači pomocou highlight.js. Pri prvom porovnaní sa načíta iba gramatika zvoleného jazyka, takže stránka zostáva ľahká. Podporované jazyky zahŕňajú JavaScript, TypeScript, Python, Javu, C#, C / C++, Go, Rust, PHP, Ruby, CSS, HTML / XML, JSON, YAML, SQL, Bash / Shell a Markdown. Automatické rozpoznanie používa jednoduché stopy (kľúčové slová, zátvorky, analýzu JSON). Ak sa pomýli, vyber jazyk sám alebo zvoľ Čistý text.
Medzery, odsadenie a konce riadkov
Ignorovať medzery a odsadenie porovnáva riadky po odstránení okrajových medzier a zlúčení súvislých medzier a tabulátorov, takže súbor preodsadený z 2 na 4 medzery alebo z tabulátorov na medzery nezobrazí žiadny rozdiel. Konce riadkov Windows (CRLF) a Unix (LF) sa pred porovnaním zjednotia, takže súbor, v ktorom sa zmenili len konce riadkov, sa ohlási ako rovnaký. Pamätaj, že medzery môžu byť dôležité v Pythone, YAML a súboroch Makefile: ak je odsadenie významné, túto voľbu vypni.
Formát unified diff
Exportovaná záplata používa štandardný formát unified, ktorý čítajú git apply, patch a nástroje na revíziu kódu: hlavička s dvoma názvami súborov a potom bloky začínajúce @@ -a,b +c,d @@ s tromi riadkami kontextu okolo každej zmeny. Súbory sa volajú original a changed s príponou podľa jazyka.
Často kladené otázky
Nahráva sa môj kód na server?
Nie. Porovnanie aj zvýrazňovanie bežia lokálne v tvojom prehliadači, kód nikdy neopustí tvoje zariadenie.
Čím sa líši od nástroja na porovnanie textu?
Používa rovnaký riadkový porovnávací nástroj, no pridáva zvýrazňovanie syntaxe, zobrazenie unified, zbaľovanie kontextu a spracovanie medzier prispôsobené kódu.
Prečo sú dva riadky označené ako zmenené, hoci vyzerajú rovnako?
Pravdepodobne sa líšia v neviditeľných znakoch: koncových medzerách, tabulátoroch namiesto medzier alebo pevnej medzere. Zaškrtni Ignorovať medzery a odsadenie a overíš to.
Môžem stiahnutú záplatu použiť v Gite?
Áno. Ulož ju a spusti patch original.js < changes.diff, alebo uprav názvy súborov v hlavičke a použi git apply.
Aké veľké môžu byť úryvky?
Niekoľko tisíc riadkov sa porovná rýchlo. Ak sú dva veľmi veľké súbory úplne odlišné, nástroj sa po pár sekundách zastaví a vyzve ťa porovnať menšie časti.
Súvisiace nástroje
- Porovnanie dvoch textov Porovnaj dva texty a pozri si každý rozdiel vedľa seba alebo v jednom texte, po riadkoch, slovách či znakoch. Súkromný nástroj, beží v prehliadači.
- Formátovanie a validácia JSON Bezplatný formátovač a validátor JSON, ktorý skrášľuje, minifikuje a kontroluje JSON v prehliadači a hlási syntaktické chyby s riadkom a stĺpcom.
- Tester regulárnych výrazov Testuj regulárne výrazy JavaScriptu naživo so zvýraznenými zhodami, zachytávacími skupinami, nahradením a vysvetlením každého prvku vzoru v bežnom jazyku.