Skip to content

`git blame` a single line and get output in JSON. Written in TypeScript.

License

Notifications You must be signed in to change notification settings

brkn/git-blame-line

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npm version NPM downloads

Git-blame-line

Executes git blame asynchronously for a given <filepath>:<linenumber> string, and returns the information in JSON format.

npm install --global git-blame-line

CLI

You don't need to remember git syntax to get blame info for single line now. Instead of writing this:

git blame -L 19,+1 --line-porcelain src/index.ts

You can execute this from command line:

blame-line src/index.ts:19

And the output would be in the shape as:

{
  "author": "Berkan Unal",
  "authorMail": "[email protected]",
  "authorTime": "2020-11-15T17:35:01.000Z",
  "authorTz": "+0300",
  "committer": "Berkan Unal",
  "committerMail": "[email protected]",
  "committerTime": "2020-11-15T17:35:01.000Z",
  "committerTz": "+0300",
  "summary": "Remove babel webpack, add eslint, lint project",
  "previous": "816634e51cf31c2d7bd18b7a8b082aff539e1bcd src/index.ts",
  "filename": "src/index.ts",
  "sourceCode": "export async function blameLine(filepathWithLine: string): Promise<BlameInfo> {"
}

Installing for using inside a node project

yarn add git-blame-line

or

npm install git-blame-line

Then import in the project and use it easily like this 1:

const { blameLine } = require("git-blame-line");

async function example() {
  const info = await blameLine("path/to/file:123");
  console.log(info);
}

example();

1 You don't have to use requirejs syntax

License

MPL-2.0

About

`git blame` a single line and get output in JSON. Written in TypeScript.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published