1.5.13 • Published 11 months ago

@antongolub/git-root v1.5.13

Weekly downloads
6
License
MIT
Repository
github
Last release
11 months ago

@antongolub/git-root

Find the closest .git containing path — the git root.

CI Maintainability Test Coverage npm (scoped)

Motivation

It's known for certain the best way to find git root:

git rev-parse --show-toplevel

However, if git executable or child_process.exec are not available for some (security?) reasons, it's advisable to use tools like this one. Inspired by pkg-dir.

Features

  • Searches for .git up the dir tree
  • Handles gitdir: </some/path.git> redirects
  • TS and Flow typings out of box
  • Sync/async methods

Install

yarn add @antongolub/git-root

Usage

import { gitRoot, gitRootSync } from '@antongolub/git-root'

// async
const gitRoot1 = await gitRoot('/optional/cwd/path/')

// sync
const gitRoot2 = gitRoot('/defaults/to/process/cwd/', true)

// sync too
const gitRoot3 = gitRoot.sync()

// `gitRootSync` is an alias for `gitRoot.sync`
const gitRoot4 = gitRootSync()

Alternatives

License

MIT