neogit
v1.5.3
Published
Git Isometry for Node.js
Downloads
18
Readme
Usage
Install this package in your project:
# via npm
npm add neogit
# or pnpm
pnpm add neogit
# or yarn
yarn add neogitNeoGit is a pure TS library serving as a readonly, high-performance alternative to isomorphic-git, addressing several issues (i.e. incorrect merge-base algorithm).
IsoGit caches many things, including entire Git object packs (potentially massive). In contrast, NeoGit takes a minimal and deliberate approach to caching. While caching much less data, NeoGit still outperforms IsoGit by a factor of 2x in many scenarios (literally $[3, \infty)$ times faster in graph-based operations).
NeoGit is suitable for environments where native modules are not supported, such as VSCode extensions. It provides a lightweight yet performant alternative to NodeGit when cache invalidation is not a primary concern.
Developed for VSCode Git Branch, this library focuses on a core set of Git features and is not a full implementation of all Git capabilities (but could be done rather easily). Therefore API is not documented, plus I'm particularly lazy (it should be self-documenting).
Caching whole pack files...?
