Paghahambing ng Teksto (Diff)

Libreng online na paghahambing ng teksto. Ihambing ang dalawang teksto linya kada linya sa iyong browser, tingnan nang eksakto kung ano ang idinagdag, tinanggal o binago, at kopyahin ang resulta bilang unified patch.

Ano ang ginagawa ng paghahambing ng teksto


Pinagtatabi ng paghahambing ng teksto ang dalawang bersyon ng iisang teksto at minamarkahan kung ano ang nagbago sa pagitan ng mga ito. Ang mga linyang nasa pareho ay hinahayaan; ang mga linyang nasa unang bersyon lamang ay minamarkahang tinanggal, at ang nasa pangalawa lamang ay idinagdag. Ang resulta ay isang maikling listahan ng mga pagbabago sa halip na dalawang mahabang file na kailangan mong basahin nang magkatabi mag-isa.

Kailan mo ito kailangan


Sa tuwing dalawang bagay ang dapat magkapareho at ang isa ay hindi: isang configuration file na gumagana sa isang server at nabibigo sa iba, isang sugnay ng kontratang binago ng iba nang walang paalam, isang log na dating malinis, isang saling lumayo sa orihinal. Mabagal at hindi maaasahan ang pagbabasa ng buong dalawang bersyon — nalalaktawan ng mata ang isang binagong numero. Hindi ito nilalaktawan ng paghahambing.

Paano basahin ang resulta


SimboloKahulugan
Pareho ang linya sa dalawang teksto at ipinapakita lamang bilang konteksto.
-Nasa orihinal na teksto lamang ang linya.
+Nasa binagong teksto lamang ang linya.
@@Sinisimulan ang isang bloke ng mga pagbabago at sinasabi kung anong mga numero ng linya ang saklaw nito sa bawat teksto.

Ito ang mga simbolo ng unified format, ang parehong ginagamit ng diff -u, git at patch. Ang patch na ginagawa ng pahinang ito ay maaaring i-save sa isang file at ilapat gamit ang mga kasangkapang iyon.

Paano ito gamitin


Tumatakbo ang paghahambing sa iyong browser. Walang ipinapadala kahit saan sa anumang ipinapaste mo, at mahalaga ito dahil ang mga file na inihahambing ng mga tao ay kadalasang iyon mismong hindi dapat i-upload: mga kredensyal, kontrata, datos ng kliyente.

  1. I-paste ang orihinal na bersyon sa unang kahon at ang binagong bersyon sa pangalawa.
  2. Piliin kung babalewalain ang malaki/maliit na titik at espasyo — kapaki-pakinabang kapag magkaibang editor ang ginamit sa dalawang file.
  3. Basahin ang mga minarkahang linya, o kopyahin ang unified patch upang ilapat ang pagbabago sa ibang lugar.

Mga madalas itanong


Ina-upload ba sa isang server ang teksto ko?
Hindi. Buong-buong nangyayari sa iyong browser ang paghahambing, sa JavaScript. Walang ipinapadala at walang iniingatan ang pahinang ito.

Bakit sinasabing nabago ang isang linya gayong nagdagdag lang ako ng isang espasyo?
Dahil eksakto ang paghahambing bilang default. Buksan ang “Huwag pansinin ang espasyo” at ang mga linyang nagkakaiba lamang sa indent o espasyo ay ituturing na pareho — ipinapakita pa rin ng tanaw ang bawat file gaya ng talagang nasa loob nito.

Puwede ba akong maghambing ng file sa halip na mag-paste ng teksto?
Buksan ang file sa anumang editor, piliin lahat at i-paste dito. Teksto ang inihahambing ng pahinang ito, kaya anumang mababasa bilang teksto ay maihahambing: code, CSV, mga log, JSON, karaniwang prosa.

Problema ba ang line ending ng Windows at Unix?
Hindi. Iisang putol ang turing sa CRLF at LF na line ending, kaya hindi lilitaw ang isang file na na-save sa Windows na parang nabago ang bawat linya.

Para saan ang patch?
Ito ang unified format na ginagawa ng diff -u at binabasa ng git at patch. I-save ito sa isang file at maaari mong ilapat nang eksakto ang pagbabagong ito sa ibang kopya ng orihinal, o ilakip sa isang ticket para makita ng iba kung ano ang binago mo.

Wikipedia — diff
Wikipedia — Unified format
Wikipedia — Longest common subsequence
Wikipedia — Patch (computing)
Wikipedia — File comparison