diff · + dodane · − usunięte
Porównywanie tekstów
Porównanie „red, green, blue” z „red, yellow, blue” wiersz po wierszu daje 1 dodany wiersz, 1 usunięty wiersz i 2 niezmienione. Wklej dwa teksty, aby zobaczyć każdą różnicę.
- +1 −1 =2
- @@ -1,3 +1,3 @@
Każdy dodany wiersz jest oznaczony znakiem +, a każdy usunięty znakiem −, a także pokolorowany, a zmienione znaki w zastąpionym wierszu są zaznaczone. Małe teksty porównują się w trakcie pisania; tekst nigdy nie opuszcza tej karty.
Scanned by NortonTM Safe Web
W skrócie
- Cena
- Bez opłat
- Konto
- Niepotrzebne
- Wysyłanie plików
- Nie dotyczy — oba teksty zostają w Twojej karcie
- Metoda
- Najdłuższy wspólny podciąg wierszy, ze zaznaczonymi zmienionymi znakami
- Wynik
- Pokolorowane i oznaczone wiersze albo unified diff z 3 wierszami kontekstu
- Limit rozmiaru
- 5,000 wierszy i 5,000,000 znaków na tekst
Przykładowe porównanie i działanie opcji
Tabele pochodzą z tego samego kodu co narzędzie. Pierwsza porównuje dwa teksty po trzy wiersze; druga pokazuje, jak opcje zmieniają wynik dla jednej pary wierszy.
| Znacznik | Wiersz |
|---|---|
| = | red |
| − | green |
| + | yellow |
| = | blue |
| Ustawienie | Wiersze dodane | Wiersze usunięte |
|---|---|---|
| Dokładnie | 1 | 1 |
| Ignoruj wielkość liter | 1 | 1 |
| Ignoruj białe znaki | 1 | 1 |
| Ignoruj wielkość liter i białe znaki | 0 | 0 |
Jak porównać dwa teksty
Wklej dwa teksty
Umieść starszy tekst w polu Tekst oryginalny, a nowszy w polu Tekst zmieniony. Dwa krótkie przykłady już tam są. Zamień teksty wymienia oba pola, a Wyczyść oba opróżnia je.
Wybierz, co jest różnicą
Zaznacz Ignoruj wielkość liter, aby uznać „Hello” i „hello” za ten sam wiersz, oraz Ignoruj białe znaki, aby pomijać spacje na końcach wiersza i powtórzone spacje w środku. Pokaż tylko zmiany zwija niezmienione wiersze, zostawiając 3 wiersze wokół każdej zmiany.
Odczytaj lub skopiuj różnicę
Wiersze oznaczone − istnieją tylko w tekście oryginalnym, a oznaczone + tylko w tekście zmienionym. Skopiuj diff w formacie unified, aby wkleić go do wiadomości lub łatki, albo pobierz go jako plik .diff.
Jak działa porównanie
Oba teksty są dzielone na wiersze, a narzędzie szuka najdłuższego wspólnego podciągu wierszy: największego zbioru wierszy, które występują w obu tekstach w tej samej kolejności. Każdy wiersz spoza tego zbioru jest zgłaszany jako usunięty (tylko w oryginale) albo dodany (tylko w tekście zmienionym), więc diff ma jak najmniej zmienionych wierszy. Gdy po usuniętym wierszu bezpośrednio następuje dodany, znaki różniące oba wiersze są zaznaczone.
Diff działa na wierszach, bo to jednostka, w której zmieniają się kod, pliki konfiguracyjne i listy, a porównanie wierszy pozostaje szybkie dla tysięcy wierszy. Wiersz, który został przesunięty, pojawia się raz jako usunięty i raz jako dodany; zmienione słowo pokazuje się jako zastąpiony wiersz z zaznaczonymi znakami. Zakończenia wierszy są normalizowane, więc plik zapisany z łamaniem wierszy Windows pasuje do tego samego pliku z łamaniem Unix. Każdy tekst może mieć do 5,000 wierszy i 5,000,000 znaków. Wynik w formacie unified diff używa powszechnego formatu: nagłówek --- i +++, a potem bloki @@ z 3 wierszami kontekstu.
Pytania o porównywanie tekstów
Jak diff tekstu decyduje, co się zmieniło?
Znajduje najdłuższy wspólny podciąg wierszy, czyli najwięcej wierszy, które oba teksty mają w tej samej kolejności. Wiersze spoza niego są oznaczone −, jeśli ma je tylko oryginał, i +, jeśli ma je tylko tekst zmieniony. „red, green, blue” wobec „red, yellow, blue” zachowuje red i blue, usuwa green i dodaje yellow.
Dlaczego porównanie działa na wierszach, a nie na słowach?
Wiersze to sposób, w jaki zorganizowane są kod, logi, listy i pliki konfiguracyjne, a wynik oparty na wierszach jest na tyle krótki, że da się go czytać. W zastąpionym wierszu znaki, które się różnią, są zaznaczone, więc zmianę jednego słowa w długim zdaniu łatwo zauważyć.
Co oznaczają kolory oraz znaki + i −?
Zielony wiersz ze znakiem + został dodany w tekście zmienionym. Czerwony wiersz ze znakiem − został usunięty z oryginału. Wiersze bez oznaczenia są takie same w obu. Znaki są wypisane obok kolorów, więc wynik jest czytelny bez odróżniania czerwonego od zielonego.
Jak zignorować różnice w wielkości liter lub spacjach?
Zaznacz Ignoruj wielkość liter, aby porównywać wiersze bez względu na wielkie litery, oraz Ignoruj białe znaki, aby pomijać spacje na początku i końcu wiersza i traktować każdy ciąg spacji w środku jako jedną spację. Po zaznaczeniu obu „Hello World” i „hello world” to ten sam wiersz.
Jak duże mogą być oba teksty?
Każdy tekst może mieć do 5,000 wierszy i 5,000,000 znaków. Tekst o 5,000 wierszach porównany ze swoją przestawioną kopią jest przetwarzany na obecnym komputerze w wyraźnie mniej niż sekundę. Powyżej 100,000 znaków łącznie porównanie zaczyna się po naciśnięciu Porównaj, a nie w trakcie pisania.
Czym jest unified diff?
To format tekstowy używany przez diff i Git. Zaczyna się od wiersza --- i wiersza +++ nazywających oba teksty, a potem jest jeden blok na grupę zmian. Blok zaczyna się nagłówkiem takim jak @@ -1,3 +1,3 @@, co oznacza 3 wiersze od wiersza 1 oryginału i 3 wiersze od wiersza 1 tekstu zmienionego, a każdy wiersz zaczyna się od spacji, + lub −.