git9
TypeScript icon, indicating that this package has built-in type declarations

0.3.0 • Public • Published

git9

npm

Utilities (How many letters?) for Git.

Installation

npm install --save git9

Usage

import {
  getCommit,
  getCurrentCommit,
  hasCommit,
  isMerging,
  hasConflicts,
  getBranch,
  getCurrentBranch,
  getRootDirectory,
  getConfig,
  getRemoteURL,
  getRemoteCommit,
  getDifferences,
  getChangedFiles,
  downloadFile,
} from 'git9'

getCommit

function getCommit(committish: string): Promise<string>

Get commit hash with a commit-ish string.

getCurrentCommit

function getCurrentCommit(): Promise<string>

Get commit hash of the current branch.

hasCommit

function hasCommit(committish: string): Promise<boolean>

Check whether a specified branch or pointer exists.

isMerging

function isMerging(): Promise<boolean>

Check whether the working repository is in the merging state. Equivalent to hasCommit('MERGE_HEAD').

hasConflicts

function hasConflicts(subpath?: string): Promise<boolean>

Check whether the working repository has conflicts.

getBranch

function getBranch(committish: string): Promise<string>

Get the branch name of a commit-ish.

getCurrentBranch

function getCurrentBranch(): Promise<string>

Get the current branch name. Equivalent to getCurrentBranch('HEAD').

getRootDirectory

function getRootDirectory(): Promise<string>

Get the root directory of the repository.

getConfig

function getConfig(config: string): Promise<string>

Get specified config value of the repository.

getRemoteURL

function getRemoteURL(name: string): Promise<string>

Get remote repository URL with specified name.

getRemoteCommit

function getRemoteCommit(url: string, committish: string): Promise<string>

Get commit hash with a commit-ish string from remote.

getDifferences

function getDifferences(committish: string): Promise<{
  name: string;
  status: string;
}[]>

Get differences between the current branch and the specified commit-ish.

Possible status letters are:

  • A: addition of a file
  • C: copy of a file into a new one
  • D: deletion of a file
  • M: modification of the contents or mode of a file
  • R: renaming of a file
  • T: change in the type of the file (regular file, symbolic link or submodule)
  • U: file is unmerged (you must complete the merge before it can be committed)
  • X: "unknown" change type (most probably a bug, please report it)

See git-diff.

getChangedFiles

function getChangedFiles(committish: string): Promise<string[]>

Get changed files in current branch from the specified commit-ish.

downloadFile

function downloadFile(url: string, committish: string, file: string): Promise<string>

Download specified file with a commit-ish string from remote using git-archive protocol.

[!NOTE] GitHub does not support git-archive protocol.

Readme

Keywords

Package Sidebar

Install

npm i git9

Weekly Downloads

3

Version

0.3.0

License

ISC

Unpacked Size

17.5 kB

Total Files

8

Last publish

Collaborators

  • cyansalt