Miten löytää kahden tekstiversion väliset muutokset
Jos haluat selvittää, mitä kahdessa versiossa on muuttunut, liitä molemmat vertailutyökaluun. Se asettaa tekstit rinnakkain, listaa eroavat rivit ja merkitsee muuttuneet sanat kunkin riviparin sisältä. Tämä sopii sekä koodille että proosalle: yksi muokattu sana pitkässä kappaleessa erottuu, ja muu kappale jää rauhaan.
Vertaile tekstiäMikä muuttui versioiden välillä?Tee se ilmaiseksiMiten diff toimii
Diff etsii pisimmän yhteisen osajonon (LCS): pisimmän sarjan kohtia, jotka esiintyvät molemmissa versioissa samassa järjestyksessä. Kohdat eivät tarvitse olla vierekkäin. Kaikki tuon yhteisen sarjan kohdat ovat muuttumattomia. Kaikki muu on joko lisäys, joka näkyy vain uudessa versiossa, tai poisto, joka näkyy vain vanhassa.
Tässä pieni esimerkki. Vanha teksti on ”A B C D” ja uusi teksti ”A C X D”. Pisin yhteinen sarja on ”A C D”, joten B on poisto ja X lisäys. Vertailutyökalu tekee saman myös pitkille dokumenteille, minkä ansiosta se voi näyttää tarkan muutoslistan eikä vain kahta tekstilohkoa rinnakkain.
Rivit ja sanat
- Rivit sopivat koodille, asetustiedostoille, listoille ja kaikelle, missä yksi kohta on yhdellä rivillä. Muuttunut rivi näkyy poistona, jota seuraa lisäys.
- Sanat sopivat esseille, sopimuksille ja kaikelle proosalle. Muuttuneen riviparin sisällä vertailutyökalu merkitsee vain muuttuneet sanat, joten lause, jossa on yksi muokattu sana, ei näytä kirjoitetulta uudelleen.
Esimerkki: yksi sana ratkaisee
Tarkastellaan kahta lausekkeen versiota:
- Vanha: ”The supplier shall deliver the goods within 14 days of the order.”
- Uusi: ”The supplier may deliver the goods within 30 days of the order.”
Vertailutyökalussa lause näkyy yhtenä poistettuna ja yhtenä lisättynä rivinä. Merkityt sanat näyttävät tarkalleen kaksi muutosta: ”shall” muuttui sanaksi ”may” ja ”14” sanaksi ”30”. Muu lause on sama. Ensimmäinen muutos muuttaa merkitystä, sillä velvoite on muuttunut valinnaksi, joten lue merkityt sanat huolellisesti.
Välilyöntien ja kirjainkoon huomiotta jättäminen
Välilyönnit ja kirjainkoko peittävät usein todellisen muutoksen, joten työkalussa on niille valintaruudut:
- Valitse Ohita välilyönnit, kun vain välilyöntejä on muutettu, esimerkiksi editorin lisäämät rivinloppuiset välilyönnit.
- Valitse Ohita kirjainkoko, kun listan on kirjoittanut useampi henkilö. Älä jätä kirjainkokoa huomiotta siellä, missä sillä on väliä, kuten asetusavaimessa tai Linuxin tiedostonimessä.
- Valitse Näytä vain muuttuneet rivit, jos haluat piilottaa muuttumattoman tekstin pitkästä vertailusta.
Esimerkiksi ”Total: 100” ja ”total: 100” ovat sisällöltään samat, jos kirjainkoko jätetään huomiotta. Tiedostossa, jossa avaimet ovat kirjainkokoherkkiä, ne ovat kaksi eri asetusta, joten kirjainkokoa ei kannata jättää huomiotta siellä.
Näin teet sen fixmintillä
- Liitä vanha versio kenttään Alkuperäinen ja uudempi kenttään Muutettu.
- Valitse Ohita välilyönnit tai Ohita kirjainkoko vain, jos ero ei ole tarkistuksellesi tärkeä.
- Lue ensin muuttuneet rivit ja sitten niiden sisällä merkityt sanat.
- Valitse Näytä vain muuttuneet rivit, jos haluat piilottaa muuttumattoman tekstin pitkästä vertailusta.
- Napsauta Kopioi diff säilyttääksesi tuloksen.
Erikoistapaukset
- Siirretyt kappaleet. Diff säilyttää alkuperäisen järjestyksen, joten kappale, joka on siirretty, näkyy poistona yhdessä kohdassa ja lisäyksenä toisessa. Etsi se silmällä tai vertaa molempia osioita erikseen.
- Uudelleen rivitetty teksti. Jos uusi versio on rivitetty eri leveyteen, rivivertailu ilmoittaa muutoksia, joita ei oikeasti ole. Yhdistä rivit ensin korjaamalla liitetty teksti ja vertaa sitten. Rivinvaihto-opas kertoo säännöt.
- Näkymättömät merkit. Näkymättömät merkit näkyvät muutoksina, vaikka mitään näkyvää ei olisi muuttunut. Poista ne ennen vertailua.
- Laajat uudelleenkirjoitukset. Kun lähes kaikki on muuttunut, diffiä on vaikea lukea. Vertaa yksi osio kerrallaan.
Näin luet tulosteen
Aloita poistoista ja sen jälkeen lisäyksistä. Tarkista ensin luvut, päivämäärät, nimet ja kieltosanat, sillä yksi muuttunut numero voi olla tärkeämpi kuin koko sivun uudelleenmuotoilu. Sopimusesimerkissä kahden sanan muutos 12 sanan lauseessa on pieni muokkaus, ja merkityt sanat tekevät siitä helppo havaita. Jos vertaat omia tekstejäsi, sanamäärän vertailu voi myös näyttää, onko uusi versio kasvanut vai lyhentynyt.
Kun kaksi versiota ovat eri ihmisiltä, nimeä ne, esimerkiksi ”luonnos 3” ja ”luonnos 4”, ja säilytä vanha tiedosto muuttumattomana. Muutosten lukeminen järjestyksessä ylhäältä alas auttaa seuraamaan, miten argumentti tai lauseke on liikkunut muokkausten aikana. Se on hitaampaa kuin suurimman muutoksen etsiminen, mutta pienen muutoksen huomaaminen on todennäköisempää.
Rividiff sopii huonosti jäsennellylle datalle, jossa yhden solun muutos voi siirtää koko riviä ja kaikkia sen jälkeisiä rivejä. Vertaile kahta taulukkoa solu kerrallaan tai vertaa kahta JSON-tiedostoa avain kerrallaan, niin muutoslista vastaa dataa.
Pikavastaukset
Mikä on diff?
Diff on lista siitä, mitä kahden version välillä on lisätty ja poistettu. Se lasketaan pisimmästä sarjasta, jonka molemmat versiot jakavat.
Pitäisikö vertailla rivi- vai sanatasolla?
Käytä rivejä koodille ja listoille, joissa jokainen rivi on oma kohtansa. Käytä sanoja proosalle, jossa yksi lause on saattanut muuttua kappaleen sisällä.
Miksi diff näyttää koko kappaleet muuttuneina?
Yleensä syynä ovat rivinvaihdot, välilyönnit tai näkymättömät merkit, jotka eroavat. Jätä välilyönnit huomiotta, muotoile teksti uudelleen tai poista näkymättömät merkit ja vertaa sitten uudelleen.
Käännetty tekoälyn avulla: Englanninkielinen alkuperäisteos.
Kommentit
Ei vielä kommentteja. Ole ensimmäinen.


