diff3 - diff3

diff3
Utvikler (er) AT&T Bell Laboratories
Første utgivelse Januar 1979 ; 42 år siden ( 1979-01 )
Operativsystem Unix og Unix-lignende
Type Kommando

diff3 er et Unix- verktøy for å sammenligne tre filer og vise eventuelle forskjeller mellom dem. diff3 kan også slå sammen filer og implementere en treveis sammenslåing .

Historie og implementeringer

diff3opprinnelig dukket opp i versjon 7 Unix fra 1979. En veldig lik versjon ble funnet i Berkeley Software Distribution (BSD) og ble arvet inn i OpenBSD og sannsynligvis Solaris .

På de fleste moderne Unix-lignende systemer, til og med BSD-avledede som FreeBSD og NetBSD, er diff3 som er gitt GNUs versjon i diffutils (tidligere GNU Tools ). Denne versjonen har muligheten til å slå sammen filer alene uten å stole på ed. Det påkaller internt diffå gjøre sammenligningen, men kan også bruke et hvilket som helst annet kompatibelt verktøy.

"Diff3" har også blitt et generisk navn for treveis sammenslåingsalgoritmen, spesielt en basert på å avstemme to forskjellige forskjeller som stammer fra den første kilden.

Fusjonerer fra en felles forfader

Når to personer har gjort endringer i kopier av den samme filen, kan diff3 produsere en sammenslått utgang som inneholder begge sett med endringer sammen med advarsler om konflikter. diff3 kan slå sammen tre eller flere sett med endringer i en fil ved å slå sammen to endringssett om gangen.

diff3 kan inkludere endringer fra to modifiserte versjoner i en vanlig forrige versjon. Dette gjør det mulig for brukere å slå sammen settene med endringer som er representert av de to nyere filene. Dette kan aktiveres ved hjelp av en kommando som dette: diff3 mine older yours.

Dette er som å trekke filen olderfra filen yoursog legge til resultatet i filen mine, eller som å slå seg sammen til mineendringene som vil bli oldertil yours. Denne sammenslåingen er veldefinert så lenge mineog oldersamsvarer i nærheten av hver slik endring. Dette klarer ikke å være sant når alle tre inndatafilene er forskjellige, eller når bare olderforskjellig; dette er en konflikt. Når alle tre innspillingsfilene er forskjellige, er konflikten en overlapping.

diff3 har flere metoder for å håndtere overlappinger og konflikter. Det kan utelate overlappinger eller konflikter, eller bare velge overlappinger, eller markere konflikter med spesielle <<<<<<<og >>>>>>>linjer.

diff3 kan sende flettingsresultatene som et ed- skript som kan brukes på den første filen for å gi den sammenslåtte utgangen. Imidlertid omgår direkte generering av den sammenslåtte utgangen noen problemer med ed.

Se også

Referanser

Eksterne linker