get-changed-files

Get a list of changed files

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
get-changed-files
0.0.15 years ago5 years agoMinified + gzip package size for get-changed-files in KB

Readme

Get Changed Files
Get a list of changed files using git.

Install

npm intall get-changed-files --save-dev
yarn add get-changed-files --dev

API

Simple usage

Without any options get-changed-files assumes that master is the main branch to compare it against current branch and also uses default strategy for determining diff point (point in history from which to start getting changes).
const getChangedFiles = require("get-changed-files");
getChangedFiles().then(results => console.log(results));

/**
 * Outputs:
 * {
 *   "changed": [
 *     "some-old-changed-file.js",
 *     "package.json",
 *     "new-file.js"
 *   ],
 *   "uncommitted": [
 *     "package.json"
 *   ],
 *   "untracked": [
 *     "new-file.js"
 *   ]
 * }
 */

Changing main branch

const getChangedFiles = require("get-changed-files");
getChangedFiles({ mainBranch: "develop" }).then(results =>
  console.log(results)
);

Custom get diff point strategy

const getChangedFiles = require("get-changed-files");
const customGetDiffPoint = ({ currentBranch, mainBranch }) => {
  // do some magic...
  return { commit: commit_hash_from_which_to_start_getting_changes };
};
getChangedFiles({ customGetDiffPoint }).then(results => console.log(results));

CLI

Also get-changed-files adds a CLI tool get-changed.
get-changed --help

  Get a list of changed files

  Usage
    $ get-changed

  Options
    --branch, -b     Specify main branch [default: master].
    --only, -o       Specify subset of results to be printed e.g. – changed | uncommitted | untracked.
    --names          Output file names only without any formatting. Can't be used with --json.
    --json           Output result as json. Can't be used with --names-only.

  Examples
    $ get-changed --only=changed
    $ get-changed --json --only=changed
    $ get-changed --names-only