1. git-repo-version
Generates a version string based on the version specified in your package.json and the sha revision of the current commit branch.
git-repo-version
Package: git-repo-version
Created by: cibernox
Last modified: Sat, 18 Jun 2022 08:34:23 GMT
Version: 1.0.2
License: MIT
Downloads: 118,484
Repository: https://github.com/cibernox/git-repo-version

Install

npm install git-repo-version
yarn add git-repo-version

git-repo-version

Generates a version string based on the version specified in your package.json and the sha revision of
the current commit/branch.

Install

Typically you will only need to install this as a devDependency as follows

npm install --save-dev git-repo-version

Usage

This plugin automatically exports a function that when called calculates return the version string with a sha of the given length (defaults to 8). You can also specify second parameter to include commit date in the output { includeDate: true }.

 var getVersion = require('git-repo-version');
getVersion(); // "1.5.0+a1b2c3d4"
getVersion({ shaLength: 10 }); // "1.5.0+a1b2c3d4e5"
getVersion({ shaLength: 10, includeDate: true }); // "1.5.0+a1b2c3d4e5 2016-10-24T18:26:53.000Z"
getVersion({ shaLength: 0, includeDate: true }); // "1.5.0 2016-10-24T18:26:53.000Z"

The way this function works is:

  • If your app has a version number in its package.json, it will use that version number and append
    the SHA of the current commit at the end (p.e. 1.5.0-beta.1+pre.a1b2c3d4)
  • If your app doesn't has a version number in the package.json, it will use the name of the current
    branch and append the SHA (p.e. develp.a1b2c3d4)
  • In the previous case, if your current HEAD is not a branch, it will use the string DETACHED_HEAD
    instead (p.e DETACHED_HEAD.1a2b3c4d)

Running tests

Simply run npm test

Dependencies

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code