Clone this repo:

Branches

  1. e206f87 Merge pull request #5 from patrickod/patrickod/fix-html-diff-tests by Aryan Naraghi · 6 weeks ago master
  2. c0b3cff Add class="line-num" to the deleted test fixture lines by Patrick O'Doherty · 6 weeks ago
  3. a1a4dd4 Merge pull request #4 from bozaro/line-num by Aryan Naraghi · 6 months ago
  4. 776c105 Merge pull request #3 from udhos/master by Aryan Naraghi · 6 months ago
  5. 16e84ec Add lost `line-num` style to deleted lines by Artem V. Navrotskiy · 6 months ago

GoDoc

difflib

difflib is a simple library written in Go for diffing two sequences of text.

Installing

To install, issue:

go get github.com/aryann/difflib

Using

To start using difflib, create a new file in your workspace and import difflib:

import (
        ...
        "fmt"
        "github.com/aryann/difflib"
        ...
)

Then call either difflib.Diff or difflib.HTMLDiff:

fmt.Println(difflib.HTMLDiff([]string{"one", "two", "three"}, []string{"two", "four", "three"}))

If you'd like more control over the output, see how the function HTMLDiff relies on Diff in difflib.go.

Running the Demo

There is a demo application in the difflib_demo directory. To run it, navigate to your $GOPATH and run:

go run src/github.com/aryann/difflib/difflib_server/difflib_demo.go <file-1> <file-2>

Where <file-1> and <file-2> are two text files you'd like to diff. The demo will launch a web server that will contain a table of the diff results.