awesome-repositories.com
ब्लॉग
awesome-repositories.com

AI-संचालित खोज के साथ बेहतरीन ओपन-सोर्स रिपॉजिटरी खोजें।

एक्सप्लोर करेंक्यूरेटेड खोजेंओपन-सोर्स विकल्पसेल्फ-होस्टेड सॉफ्टवेयरब्लॉगसाइटमैप
प्रोजेक्टहमारे बारे मेंहम रैंकिंग कैसे करते हैंप्रेसMCP सर्वर
कानूनीगोपनीयताशर्तें
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
nodegit avatar

nodegit/nodegit

0
View on GitHub↗
5,753 स्टार्स·700 फोर्क्स·JavaScript·MIT·2 व्यूज़www.nodegit.org↗

Nodegit

NodeGit is a native Node.js binding library that wraps the libgit2 C API, providing direct Git repository operations from JavaScript without shelling out to the Git command-line interface. It exposes Git operations such as cloning remote repositories, opening local repositories, reading file contents from specific commits, and walking through commit history, all through a Promise-based asynchronous API that prevents event loop starvation by offloading blocking operations to a worker pool.

The library distinguishes itself by bridging the C/JavaScript boundary through N-API, with reference-counted object management to prevent memory leaks and an error propagation bridge that converts libgit2 error codes into descriptive JavaScript Error objects. This enables programmatic Git repository automation with native performance, avoiding the overhead and parsing issues of subprocess-based approaches.

The library covers core Git repository access capabilities including commit history traversal, file extraction from Git history, and repository inspection, all exposed through JavaScript-friendly interfaces while preserving low-level control over Git operations.

Features

  • Programmatic Git Automation Libraries - Programmatically clones, opens, and inspects Git repositories from Node.js without shelling out to the Git CLI.
  • Git Native Bindings - Provides native Node.js bindings that expose Git repository operations for cloning, committing, and history traversal.
  • Commit History Traversal - Traverses the commit history of a branch, emitting events for each commit to show details like author and message.
  • Commit File Content Readers - Retrieves a specific file's content from a given commit by locating the commit and extracting the blob.
  • Event-Driven History Walkers - Provides an event-driven tool for traversing commit history and extracting author and message details.
  • Local Repository Openers - Opens an existing local Git repository and reads its most recent commit metadata.
  • Programmatic Repository Access Libraries - Provides a library for programmatically opening, cloning, and interacting with Git repositories from Node.js.
  • Remote Repository Cloning - Downloads a remote Git repository into a local directory, preserving its full history and files.
  • Programmatic Clone and Commit APIs - Provides an API for cloning remote repositories and reading file contents from specific commits in Node.js.
  • Event Loop Offloading Pools - Offloads blocking Git operations to a libuv thread pool to prevent event loop starvation.
  • C-API Wrappers - Wraps the libgit2 C API with JavaScript-friendly interfaces while preserving low-level control.
  • Node.js Native Addons - Bridges Node.js to the libgit2 C library through N-API for direct Git operations.
  • Git Native Addons - Calls Git operations directly from JavaScript with native performance, avoiding subprocess overhead.
  • Promise-Based API Wrappers - Returns JavaScript Promises for all Git operations, enabling modern async/await patterns.
  • Native Error Code Converters - Converts libgit2 error codes into descriptive JavaScript Error objects with stack traces.
  • Git History File Extractors - Retrieves the content of a specific file as it existed in any given commit, enabling audit or restore workflows.
  • Reference Counting - Manages Git object lifetimes through reference counting to prevent memory leaks across the C/JS boundary.
  • General Utilities - Native Git bindings.
  • Git and GitHub Libraries - Node.js implementation of Git.
  • Git Utilities - Node.js bindings for libgit2.

स्टार हिस्ट्री

nodegit/nodegit के लिए स्टार हिस्ट्री चार्टnodegit/nodegit के लिए स्टार हिस्ट्री चार्ट

AI सर्च

और अधिक बेहतरीन रिपॉजिटरी खोजें

अपनी ज़रूरत को सरल भाषा में बताएं — AI हजारों क्यूरेटेड ओपन-सोर्स प्रोजेक्ट्स को प्रासंगिकता के आधार पर रैंक करता है।

Start searching with AI

Nodegit के ओपन-सोर्स विकल्प

समान ओपन-सोर्स प्रोजेक्ट्स, जो Nodegit के साथ साझा की गई सुविधाओं के आधार पर रैंक किए गए हैं।
  • nodejs/node-addon-apinodejs का अवतार

    nodejs/node-addon-api

    2,400GitHub पर देखें↗

    This project provides a header-only C++ wrapper for the Node-API, serving as a framework for building high-performance native addons for Node.js. It acts as a bridge between C++ and JavaScript, offering an object-oriented interface that simplifies the creation of compiled extensions while managing the complexities of the language boundary. The library distinguishes itself by providing type-safe abstractions for data marshalling and memory management, ensuring that native and script-side objects are tracked and reclaimed correctly. It includes mechanisms for coordinating asynchronous tasks bet

    C++nodenodejs
    GitHub पर देखें↗2,400
  • gitpython-developers/gitpythongitpython-developers का अवतार

    gitpython-developers/GitPython

    5,136GitHub पर देखें↗

    GitPython is a Python library that provides a programmatic interface for interacting with Git repositories. It functions as a version control API and a wrapper that allows for the execution of Git commands and the manipulation of repository commits, branches, and working trees. The project acts as a Git object manipulator, allowing users to inspect and modify internal data structures and blobs. It provides a structured layer for executing command line instructions with integrated error handling and data retrieval. The library covers a wide range of capabilities including repository initializ

    Python
    GitHub पर देखें↗5,136
  • progit/progit2progit का अवतार

    progit/progit2

    6,522GitHub पर देखें↗

    This project is a comprehensive educational resource and guide for learning the Git version control system. It serves as a technical documentation source for a textbook that explains the fundamentals, advanced workflows, and internal architecture of Git. The project is structured as a multi-format e-book, with source files designed to be compiled into various digital publication formats, including HTML, PDF, EPUB, and Mobi. It utilizes a dedicated build pipeline to generate and validate these documents. The content covers a broad range of version control capabilities, including history manip

    CSS
    GitHub पर देखें↗6,522
  • src-d/go-gitsrc-d का अवतार

    src-d/go-git

    4,880GitHub पर देखें↗

    This project is a native implementation of the Git version control system for Go applications. It provides a programmable API and a low-level plumbing toolset that allows developers to manage repositories, manipulate object graphs, and perform version control operations without requiring external system binaries or C bindings. The library is distinguished by its flexible storage and network layers, featuring a virtual file system that enables in-memory repository management to bypass disk I/O. It supports pluggable network transports and interface-based storage backends, allowing for custom p

    Go
    GitHub पर देखें↗4,880
Nodegit के सभी 30 विकल्प देखें→

अक्सर पूछे जाने वाले प्रश्न

nodegit/nodegit क्या करता है?

NodeGit is a native Node.js binding library that wraps the libgit2 C API, providing direct Git repository operations from JavaScript without shelling out to the Git command-line interface. It exposes Git operations such as cloning remote repositories, opening local repositories, reading file contents from specific commits, and walking through commit history, all through a Promise-based asynchronous API that prevents event loop starvation by offloading blocking operations to…

nodegit/nodegit की मुख्य विशेषताएं क्या हैं?

nodegit/nodegit की मुख्य विशेषताएं हैं: Programmatic Git Automation Libraries, Git Native Bindings, Commit History Traversal, Commit File Content Readers, Event-Driven History Walkers, Local Repository Openers, Programmatic Repository Access Libraries, Remote Repository Cloning।

nodegit/nodegit के कुछ ओपन-सोर्स विकल्प क्या हैं?

nodegit/nodegit के ओपन-सोर्स विकल्पों में शामिल हैं: nodejs/node-addon-api — This project provides a header-only C++ wrapper for the Node-API, serving as a framework for building high-performance… gitpython-developers/gitpython — GitPython is a Python library that provides a programmatic interface for interacting with Git repositories. It… progit/progit2 — This project is a comprehensive educational resource and guide for learning the Git version control system. It serves… src-d/go-git — This project is a native implementation of the Git version control system for Go applications. It provides a… facebook/sapling — Sapling is a scalable version control system designed to handle repositories with millions of files and commits,… libgit2/libgit2 — libgit2 is a portable, cross-platform C library that provides a programmatic interface for integrating Git version…