what-the-diff

0.6.0 • Public • Published

JavaScript Diff Parser

Credit: @eightballart

Parse unified diffs with JavaScript

Installation

what-the-diff is available via npm

npm install what-the-diff

Usage

let {parse} = require('what-the-diff')
 
var str = `diff --git file.txt file.txt
index 83db48f..bf269f4 100644
--- file.txt
+++ file.txt
@@ -1,3 +1,3 @@
line1
-line2
+new line
line3`
 
parse(diffStr)
 
// returns
  {
    oldPath: 'file.txt',
    newPath: 'file.txt',
    oldMode: '100644',
    newMode: '100644',
    status: 'modified',
    hunks: [
      {
        oldStartLine: 1,
        oldLineCount: 3,
        newStartLine: 1,
        newLineCount: 3,
        lines: [
          ' line1',
          '-line2',
          '+new line',
          ' line3'
        ]
      }
    ]
  }

If the diff includes a similarity index line (from a detected copy or rename), the similarity property will be set, and will be a number.

Readme

Keywords

Package Sidebar

Install

npm i what-the-diff

Weekly Downloads

12,302

Version

0.6.0

License

MIT

Unpacked Size

79.6 kB

Total Files

8

Last publish

Collaborators

  • binarymuse
  • kuychaco