Diff Checker

Náš diff checker porovná dva texty a během několika milisekund vytvoří přehledné vizuální porovnání vedle sebe. Vložte původní text vlevo a upravenou verzi vpravo; nástroj spustí řádkové porovnání založené na algoritmu LCS (stejná rodina algoritmů, jakou používá GNU diff, git diff a většina nástrojů pro revizi kódu) a zvýrazní každou změnu. Přidané řádky jsou zelené, odebrané červené a u změněných řádků se zobrazí přesný odlišný podřetězec po jednotlivých znacích. Souhrnný řádek udává počet přidaných, odebraných a změněných řádků spolu s procentem shody. Nástroj si poradí s prostým textem, zdrojovým kódem (JavaScript, Python, Go, Java, Rust, C/C++, HTML, CSS), konfiguracemi JSON a YAML, daty CSV, logovacími soubory a jakýmkoli vstupem v kódování UTF-8 až do velikosti několika megabajtů na stranu. Veškeré zpracování probíhá lokálně ve vašem prohlížeči pomocí JavaScriptu — nic se neposílá na server, takže je nástroj bezpečný pro proprietární kód, interní dokumenty i důvěrná data. Vytvořeno pro vývojáře, technické pisatele, editory a kohokoli, kdo potřebuje rychle zjistit, co se mezi dvěma verzemi textu změnilo.

star 4.9
auto_awesome AI
New

Diff Checker calculator

lock Privacy: the diff runs entirely in your browser using JavaScript LCS — no text is uploaded to any server. Safe for proprietary code, internal docs and confidential data.

lightbulb Tips

  • •Runs entirely in your browser — no text is uploaded
  • •Format JSON/code identically before diffing to avoid noise
  • •Use 'ignore whitespace' for reformatted-but-equivalent code
  • •Side-by-side for visual review; unified for patch files
  • •Same LCS algorithm as GNU diff and git diff — exact, reproducible

Jak porovnat dva texty ve 3 krocích: Vložit, Porovnat a Zkontrolovat změny

content_paste

Vložit text

Vložte původní text do levého pole a upravený text do pravého pole. Prostý text, kód, JSON, YAML, CSV — funguje jakýkoli vstup v kódování UTF-8.

compare_arrows

Spustit porovnání

Porovnání se vypočítá okamžitě po vložení. Přidané řádky se zobrazují zeleně, odebrané červeně a u změněných řádků je zvýrazněn konkrétní odlišný podřetězec.

compare

Zkontrolovat změny

Prohlédněte si porovnání vedle sebe a souhrnné statistiky (přidáno / odebráno / procento shody). Pokud přeformátovaný kód vytváří zbytečný šum, zapněte možnost „ignorovat mezery“.

content_copy

Zkopírovat nebo exportovat

Zkopírujte sjednocený diff pro použití jako soubor patch nebo pořiďte snímek obrazovky porovnání vedle sebe pro sdílení. Veškeré zpracování probíhá ve vašem prohlížeči — nic se nenahrává.

The Formula

Moderní nástroje pro porovnání textu spoléhají na rodinu algoritmů LCS (Nejdelší společná podposloupnost) — stejný teoretický základ, který představili Hunt a McIlroy v Bell Labs v roce 1976 a v roce 1986 vylepšil Eugene Myers (algoritmus O(ND) používaný v GNU diff a git). Krok 1: rozdělení obou textů na řádky. Krok 2: výpočet LCS — nejdelší posloupnost řádků přítomných v obou vstupech ve stejném pořadí. Krok 3: klasifikace každého řádku jako „shodný“ (v LCS, nezměněn), „odebrat“ (v linesA, ale ne v LCS) nebo „přidat“ (v linesB, ale ne v LCS). Volitelný krok 4: u sousedních dvojic odebrat + přidat na podobných řádcích označit jako „změna“ a spustit podrobný diff na úrovni znaků pro zobrazení skutečně změněného podřetězce. Podobnost = 2 × délka LCS ÷ (celkový počet řádků na obou stranách). Praktické implementace přidávají heuristiku pro přesunuté bloky, zpracování mezer a velké soubory.

diff = LCS(linesA, linesB) → ops[] = {equal | add | remove | change}

lightbulb Variables Explained

  • linesA Pole řádků z levého textu (původní verze / verze před)
  • linesB Pole řádků z pravého textu (upravená verze / verze po)
  • LCS Nejdelší společná podposloupnost (LCS) — nejdelší posloupnost řádků, která se objevuje v obou vstupech ve stejném pořadí. Řádky mimo LCS jsou považovány za operace přidání nebo odebrání.
  • similarity 100 × délka_LCS × 2 / (linesA.length + linesB.length). Pohybuje se od 0 % (žádný překryv) do 100 % (identické).

tips_and_updates Pro Tips

1

Pro kód a konfigurační soubory použijte řádkové porovnání; znakové porovnání používejte pouze pro krátké odstavce

2

Před porovnáním odstraňte mezery na koncích řádků — mnoho skutečných „změn“ jsou jen neviditelné úpravy mezer

3

Při porovnávání kódu, který byl přeformátován, ale jeho funkčnost se nezměnila, nastavte porovnání na „ignorovat mezery“

4

U formátu JSON nejprve naformátujte obě strany (seřaďte klíče, sjednoťte odsazení), aby porovnání zachytilo pouze skutečné změny

5

Při porovnávání souborů CSV nejprve porovnejte počty řádků a záhlaví; řádkový diff pak odhalí skutečné změny v řádcích

6

Zobrazení vedle sebe (side-by-side) je nejlepší pro malé až střední změny; sloučené zobrazení (unified diff) je kompaktnější při rozsáhlých přepsáních

7

Vaše texty zůstávají v bezpečí u vás — nástroj funguje kompletně ve vašem prohlížeči, nic se nenahrává ani nezaznamenává

8

U velmi velkých souborů (>1 MB) počítejte s dobou výpočtu 1–2 sekundy; algoritmus LCS má v nejhorším případě složitost O(N*M)

9

Porovnání na úrovni slov pomáhá editorům při porovnávání souvislého textu; porovnání na úrovni řádků používají nástroje pro revizi kódu

10

Dokumenty Microsoft Word nejprve exportujte do prostého textu — nástroje pro porovnání neumí číst binární strukturu souborů .docx

Porovnejte dva texty, kód, JSON, YAML, CSV nebo jakýkoli jiný prostý text vedle sebe — okamžitě, zdarma a zcela ve vašem prohlížeči. Tento porovnávač rozdílů (diff checker) využívá stejnou rodinu algoritmů porovnávání řádků na bázi LCS, na jakou spoléhají GNU diff, git diff, GitHub, GitLab, Visual Studio Code a IDE od JetBrains. Vložte originál vlevo a upravenou verzi vpravo; nástroj zvýrazní každý přidaný řádek zeleně, každý odebraný řádek červeně a každý změněný řádek se zvýrazněním konkrétních změněných znaků. Souhrn uvádí počet přidaných, odebraných a změněných řádků spolu s procentem shody. Vytvořeno pro vývojáře kontrolující kód, technické písaře porovnávající revize dokumentů, DevOps inženýry porovnávající konfigurace mezi prostředími a editory zjišťující, co autor skutečně změnil. Níže najdete: jak diff nástroje fungují, návod pro konkrétní formáty JSON/CSV/YAML/kód, srovnání zobrazení vedle sebe (side-by-side) a sjednoceného zobrazení (unified), aspekty soukromí a přehledové porovnání pro vývojáře.

Diff Checker Online: Porovnání textu, kódu a konfiguračních souborů vedle sebe

Diff checker porovnává dva texty a přesně zobrazuje, které řádky se liší. Vložte originál (verzi „před“) do levého textového pole a upravenou verzi (verzi „po“) do pravého; nástroj spustí porovnání na bázi LCS a během několika milisekund zvýrazní každý rozdíl.

Přidané řádky se zobrazí zeleně, odebrané řádky červeně a u změněných řádků se zvýrazní konkrétní podřetězec znaků, který se skutečně změnil. Souhrnný řádek nahoře uvádí počet přidaných, odebraných a změněných řádků a také procento shody.

Použijte jej pro jakékoli porovnání prostého textu:

  • zdrojový kód
  • konfigurace JSON
  • manifesty YAML
  • exporty CSV
  • soubory protokolů (logy)
  • koncepty v Markdownu
  • běžný prostý text

Nástroj zvládne vstup v kódování UTF-8 až do velikosti několika megabajtů na každé straně bez selhání.

A co je nejdůležitější: každý bajt výpočtů probíhá lokálně ve vašem prohlížeči. Nic se neodesílá na server, nic se neprotokoluje, nic neopouští vaše zařízení — ideální i pro proprietární kód, interní dokumenty a důvěrné údaje.

Jak porovnat dva texty: Návod ve 3 krocích pro začátečníky s Diff Checkerem

Porovnání dvou textů vyžaduje tři rychlé kroky:

  • Krok 1: Vložte původní text do levého pole. Toto je verze „před“ — soubor ve stavu před změnami, původní koncept nebo předchozí konfigurace. Pomocí Ctrl+A a Ctrl+C zkopírujte text z libovolného textového editoru nebo prohlížeče a vložte jej pomocí Ctrl+V do porovnávače.
  • Krok 2: Vložte upravený text do pravého pole. Toto je verze „po“ — upravený soubor, nový koncept nebo aktualizovaná konfigurace. Porovnání se vypočítá automaticky, jakmile je obsah na obou stranách.
  • Krok 3: Přečtěte si výsledek. Zelené řádky jsou přidané prvky přítomné vpravo, ale ne vlevo; červené řádky jsou odebrané prvky přítomné vlevo, ale ne vpravo; řádky se zvýrazněním na úrovni znaků jsou „změněné“ (pár odstranění + přidání u podobného obsahu).

Souhrn nahoře poskytuje přehled na vysoké úrovni: počet přidaných a odebraných řádků a procento shody od 0 % (žádný překryv) do 100 % (identické).

Přepněte na „ignorovat bílé znaky“, pokud jsou jedinými změnami přeformátování; přepněte na „ignorovat velikost písmen“, pokud nerozlišujete mezi Velká-vs-malá.

Nástroj pro porovnání textu: Porovnání řádek po řádku vs. znak po znaku

Diff nástroje pracují v jedné ze tří úrovní podrobnosti: řádek, slovo nebo znak.

  • Řádek po řádku je univerzální výchozí nastavení pro kód a konfiguraci: každý řádek je považován za jednotku a diff určuje, které celé řádky byly přidány, odebrány nebo podstatně změněny. Toto zobrazují GNU diff, git diff, pull requesty na GitHubu i diff zobrazení v IDE.
  • Slovo po slově (někdy nazývané „word diff“) rozděluje text podle mezer — což je lepší pro souvislý text, kde k úpravám často dochází uvnitř vět.
  • Znak po znaku je nejjemnější úroveň, kterou většina diff nástrojů používá vnitřně ke zvýraznění přesného podřetězce, který se liší v rámci změněného řádku.

Výše uvedený nástroj zobrazuje porovnání řádků jako hlavní zobrazení a porovnání znaků jako zvýraznění na změněných řádcích — jedná se o stejný dvouúrovňový přístup, jaký používají VS Code, JetBrains a GitHub.

Používejte řádkový diff pro revizi kódu, slovní diff pro úpravu textu a znakový diff pouze pro krátká srovnání (jednotlivé věty, identifikátory, URL).

Porovnání kódu: Porovnání zdrojového kódu pro JavaScript, Python, Go a další

Zdrojový kód je nejčastějším příkladem použití diffu — každá revize kódu, každý PR a každý git commit zahrnuje porovnávání kódu.

Porovnávač diff zvládne jakýkoli programovací jazyk, protože algoritmus LCS je nezávislý na jazyce: JavaScript, TypeScript, Python, Go, Rust, Java, Kotlin, Swift, C, C++, C#, PHP, Ruby, Scala, Elixir, Clojure, shell skripty, Dockerfile, Terraform HCL, SQL — vše funguje stejně.

Osvědčené postupy pro porovnání kódu: před vložením zformátujte obě strany stejným formátovačem kódu (Prettier pro JS/TS, Black pro Python, gofmt pro Go, rustfmt pro Rust), aby mezery a stylové rozdíly nenarušovaly reálný sémantický rozdíl. Pokud nemůžete kód přeformátovat, použijte možnost „ignorovat bílé znaky“ pro přeskočení rozdílů v úvodních a koncových mezerách.

Pro porovnávání mezi různými jazyky (například porovnání implementace v Pythonu s převodem do Go) řádkový diff stále funguje, ale procento shody bude zavádějící — smysluplnou jednotkou je zde strukturální podobnost, nikoli překryv řádků.

JSON Diff Checker: Porovnání objektů JSON, polí a konfiguračních souborů

JSON diff je jedním z nejpoptávanějších případů použití — porovnávání odpovědí API, konfiguračních souborů, souborů package.json a strukturovaných datových exportů.

Důležitý předchozí krok: zformátujte obě strany identicky. Použijte přehledné odsazení (pretty-print) se stejným počtem mezer (obvykle 2 nebo 4) a seřaďte klíče objektů abecedně. Bez normalizace může strukturálně identický dokument JSON vytvořit velmi nepřehledný diff jen proto, že jsou klíče v jiném pořadí.

Nástroje pro normalizaci:

  • jq s příznakem --sort-keys
  • funkce json.dumps v Pythonu s sort_keys=True
  • jsonformatter.org

Pro sémanticky zaměřené porovnávání JSON (kde {a:1, b:2} a {b:2, a:1} jsou si rovny) dávají specializované nástroje jako json-diff (npm), jq nebo RFC 6902 JSON Patch lepší výsledky než řádkový diff.

Výše uvedený řádkový nástroj funguje pro JSON dobře, pokud jsou obě strany předem normalizovány; pokud pravidelně potřebujete sémantický JSON diff, zvažte zařazení specializované knihovny pro JSON do svého vývojového prostředí.

Porovnání YAML a CSV: Porovnání strukturovaných dat a konfiguračních rozdílů

YAML a CSV jsou řádkově orientované formáty, které se pomocí řádkových nástrojů porovnávají čistě — obvykle s menším šumem než JSON, protože YAML nemá složené závorky a CSV má konzistentní strukturu řádků.

Tipy pro porovnání YAML: ujistěte se, že obě strany používají stejné odsazení (na 2 vs. 4 mezerách záleží; v YAML mají bílé znaky význam), stejné pořadí klíčů a stejný styl uvozovek pro řetězce. Pro manifesty Kubernetes, soubory Docker Compose a YAML pracovní postupy v CI je výše uvedený řádkový diff standardním nástrojem používaným při každé revizi kódu.

Tipy pro porovnání CSV: ujistěte se, že oba soubory používají stejný oddělovač (čárka, středník, tabulátor), stejná zakončení řádků (LF vs. CRLF — mnoho souborů CSV z Excelu používá CRLF), stejné pořadí sloupců a odpovídající záhlaví.

Pro velká CSV (>10 000 řádků) vytvářejí specializované nástroje jako csvdiff (Aswinkarthik) nebo daff (paulfitz) strukturované rozdíly ukazující, který řádek a sloupec se změnil; pro menší soubory je výše uvedený řádkový diff rychlý a jednoduchý.

Jak fungují diff nástroje: Algoritmus LCS a Myersův diff vysvětleny

Všechny moderní diff nástroje spoléhají na rodinu algoritmů LCS (Longest Common Subsequence / Nejdelší společná podposloupnost).

Původní algoritmus diff publikovali James Hunt a Doug McIlroy v Bell Labs v roce 1976 — jde o stejný článek, z něhož vzešel příkaz Unixu „diff“, který se používá dodnes. V roce 1986 publikoval Eugene Myers práci „An O(ND) Difference Algorithm and Its Variations“, která optimalizovala LCS pro běžné případy malých rozdílů ve velkých vstupech.

Myersův algoritmus běží v čase O((N+M)D), kde N+M je celková velikost vstupu a D je počet úprav — což je výrazně rychlejší než naivní O(N×M) pro typické reálné diffy (kde D je malé vzhledem k N+M). GNU diff, git diff, libxdiff (používaný v Mercurialu, Subversionu, GitHubu) všechny implementují Myerse nebo velmi příbuzné varianty „patience diff“ a „histogram diff“.

Výše uvedený porovnávač rozdílů používá JavaScriptovou implementaci LCS vyladěnou pro výkon v prohlížeči — je dostatečně rychlá pro vstupy o velikosti až několika megabajtů na stranu.

Zobrazení diff vedle sebe (Side-by-Side) vs. sjednocené zobrazení (Unified): Kdy použít který formát

Existují dva hlavní způsoby zobrazení rozdílů: vedle sebe (rozdělené zobrazení / side-by-side) a sjednocené (unified).

Zobrazení vedle sebe umístí původní a upravenou verzi do dvou sloupců s horizontálně zarovnanými změnami — je přehlednější pro lidské čtení, protože vidíte obě verze najednou a vizuální seskupení usnadňuje pochopení struktury. Toto je výchozí nastavení v IDE (VS Code, IntelliJ), u PR na GitHubu (v režimu „split“) a ve většině online diff nástrojů.

Sjednocené zobrazení (Unified diff) staví odebrané a přidané řádky do jednoho sloupce s předponami „-“ a „+“ a 3 řádky nezměněného kontextu nahoře a dole — je kompaktnější, lze jej zpracovávat skripty (je to formát patch souborů, který zpracovávají příkazy „git apply“ a „patch“) a je výchozím nastavením v nástrojích příkazové řádky a při revizi kódu přes e-mail (např. v mailing listu vývojářů jádra Linuxu).

Zvolte zobrazení vedle sebe pro vizuální kontrolu malých až středních změn; zvolte sjednocené zobrazení pro kompaktní zobrazení rozsáhlých přepisů, pro kopírování jako patch soubor nebo pro sdílení v čistě textových kontextech (chat, e-mail, terminál).

Porovnání dvou dokumentů: Psaní, úpravy a kontrola plagiátorství

Porovnávání dokumentů pokrývá širokou škálu použití: sledování změn provedených editorem v konceptu, porovnávání dvou verzí smlouvy, kontrola toho, co bylo parafrázováno vs. zkopírováno (lehká detekce plagiátů) nebo kontrola posunu v překladu.

Použijte porovnávač diff pro jakýkoli dokument v prostém textu. Pro různé zdrojové formáty:

  • U souborů Microsoft Word .docx nejprve exportujte text do prostého textu (Soubor > Uložit jako > Prostý text ve Wordu nebo Formát > Prostý text v LibreOffice). Ztratíte formátování (tučné písmo, kurzívu, nadpisy), ale zachytíte každou změnu v textu.
  • U dokumentů PDF nejprve použijte převodník z PDF do textu (pdftotext z balíčku poppler-utils nebo webové nástroje) a poté porovnejte vyextrahovaný text.
  • U Google Docs použijte vestavěnou Historii verzí (Soubor > Historie verzí > Zobrazit historii verzí), která nativně zobrazuje zjištěné změny podle autorů.

Pro dlouhé texty, kde jsou zalomení řádků libovolná, zvažte nástroje pro porovnání na úrovni slov (diff --word-diff v gitu) — ignorují zalomení řádků a zobrazují skutečné změny na úrovni slov.

Soukromí při online porovnávání textu: Proč porovnání v prohlížeči překonává cloudové nástroje

Na soukromí záleží, pokud porovnáváte proprietární kód, interní dokumentaci, finanční záznamy, zákaznická data nebo jakýkoli důvěrný text. Mnohé online diff nástroje nahrávají zadávaný text na svůj server k zpracování — což je pohodlné, ale představuje to reálné riziko pro citlivý obsah.

Porovnávač rozdílů na této stránce funguje zcela na straně klienta: algoritmus LCS běží v JavaScriptu přímo ve vašem prohlížeči, žádné volání fetch() nikdy neopustí vaše zařízení a na žádném serveru nevznikne žádný záznam v protokolu. Můžete si to sami ověřit otevřením Nástrojů pro vývojáře (DevTools) > karta Síť (Network) a vložením textu — neuvidíte žádné odchozí požadavky.

Pro maximální soukromí u vysoce citlivého obsahu použijte lokální nástroj, který se s sítí vůbec nespojuje:

  • GNU diff (předinstalovaný v Linuxu/macOS)
  • git diff (v jakémkoli repozitáři)
  • vestavěný diff ve VS Code
  • diff v IDE od JetBrains
  • Beyond Compare

Pro jednorázová srovnání méně citlivého textu vám ověřený nástroj v prohlížeči, jako je ten výše, poskytne pohodlí webového nástroje se soukromím lokálního řešení.

Nástroj pro porovnávání souborů pro vývojáře: Code Review, řešení konfliktů při slučování a PR

Pro vývojáře je diff každodenní infrastrukturou — revize kódu (code review), kontrola PR, řešení konfliktů při slučování (merge conflicts), porovnávání konfigurací mezi prostředími, ladění regresí typu „co se změnilo“.

Používejte git diff pro sledované změny (git diff, git diff --staged, git diff main..feature, git diff HEAD~3); používejte online diff checker výše pro ad-hoc porovnání (někdo vloží úryvek kódu do Slacku, porovnáváte výpis proměnných prostředí ze stagingu a produkce, kontrolujete místní konfiguraci kolegy oproti vlastní).

Pro řešení konfliktů při slučování jsou třícestné diff nástroje (kdiff3, p4merge, vestavěné třícestné zobrazení ve VS Code) lepší než dvoucestné diffy, protože kromě obou stran zobrazují i společného předka.

Pro rozsáhlou revizi kódu používají GitHub PR, GitLab MR i Gerrit pod kapotou stejný řádkový LCS diff — to, co vidíte v PR, je stejný algoritmus, který můžete spustit lokálně pomocí git diff nebo vložit do online nástroje výše. Diff je napříč nástroji reprodukovatelný: stejné vstupy vždy dávají stejný diff.

Diff Checker vs. Git Diff: Kdy co použít při každodenní vývojářské práci

Oba vytvářejí matematicky ekvivalentní diffy na bázi LCS — použitý algoritmus je totožný.

Git diff použijte, když:

  • máte soubory v repozitáři git
  • chcete porovnat commity/větve/připravené změny (staged changes)
  • potřebujete porovnání skriptovat (kontroly v CI, pre-commit hooky)
  • potřebujete porovnání s ohledem na historii (git log, git blame)
  • nebo vytváříte patch soubor (git format-patch)

Online diff checker použijte, když:

  • máte čistý text, který není v repozitáři (úryvek z chatu, odpověď API, výpis konfigurace)
  • chcete rychlé vizuální zobrazení vedle sebe bez nastavování repozitáře
  • porovnáváte data napříč systémy, kde git není k dispozici (někdo na Chromebooku, schůzka nad revizí kódu)
  • nebo je obsah citlivý a chcete ověřený nástroj běžící pouze v prohlížeči bez síťových požadavků

Oba nástroje patří do výbavy vývojáře; ani jeden nenahrazuje druhý. Hlavní předností online nástroje je nulové nastavování a vizuální srovnání vedle sebe; hlavní předností gitu je znalost historie a integrace do vývojového ekosystému.

code

Embed this Diff Checker on your site

Free for any site. Copy the snippet below and paste into your HTML — no attribution required beyond the built-in credit link.

<iframe src="https://calculators.im/embed/diff-checker" width="100%" height="720" style="border:0;max-width:100%;" loading="lazy" title="Diff Checker by Calculators.im"></iframe>
<p style="font-size:12px;text-align:center;color:#64748b;margin-top:6px;">Powered by <a href="https://calculators.im/diff-checker?utm_source=embed&utm_medium=snippet&utm_campaign=diff-checker">Diff Checker</a> by Calculators.im</p>
open_in_new Preview embed Auto-resizing iframe. Mobile responsive. Works with WordPress, Ghost, Webflow, and plain HTML.

Frequently Asked Questions

sell

Tags