Executes git blame
asynchronously for a given <filepath>:<linenumber>
string, and returns the information in JSON format.
npm install --global git-blame-line
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> {"
}
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
MPL-2.0