Automic VaultAutomic Vault

brew

Install libgit2 with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

C library of Git core methods that is re-entrant and linkable. Version 1.9.4 via Homebrew; verified 2026-05-22.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install libgit2

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install libgit2

MacPorts ports tree · devel/libgit2/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add libgit2

Alpine Linux edge package indexes · libgit2 · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install libgit2-1.9

Debian stable package indexes · libgit2-1.9 · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install libgit2

Fedora Rawhide package metadata · libgit2 · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#libgit2

nixpkgs package indexes · pkgs/by-name/li/libgit2/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S libgit2

Arch Linux sync databases · libgit2 · source: geo.mirror.pkgbuild.com

Ubuntu aptverified · 92%
sudo apt install libgit2-1.7

Ubuntu 24.04 LTS package indexes · libgit2-1.7 · source: archive.ubuntu.com

openSUSE zypperverified · 92%
sudo zypper install libgit2-1_9

openSUSE Tumbleweed package metadata · libgit2-1_9 · source: download.opensuse.org

overview

Package summary

C library of Git core methods that is re-entrant and linkable

Commands and aliases

  • git2

history

Project history and usage

libgit2 is a portable C implementation of Git core methods as a re-entrant, linkable library. It became important because the original Git executable was not designed as an embeddable library, while editors, forges, desktop clients, hosting providers, and language bindings needed Git behavior inside long-running applications.

Project history

GitHub's 2010 project announcement describes libgit2 as started by Shawn Pearce a few years earlier, then revived through a Google Summer of Code project by Vicent Marti with Scott Chacon as mentor. The immediate motivation was practical: Git's own code called die() and was not re-entrant, so GUI, web, and scripting users often had to fork and parse the Git binary.

The upstream README describes libgit2 as a portable pure-C implementation with a solid API, usable from C directly and through bindings. By 2020, maintainer Edward Thomson announced libgit2 1.0 after many years of planning and bug fixing; by late 2024 maintainers were publicly discussing planned ABI/API changes for libgit2 2.0 and SHA-256 support.

Adoption history

libgit2's adoption followed the rise of Git as a developer platform rather than only a command-line tool. The upstream README says it is used by GUI clients, hosting providers, forges, utilities, and applications, with bindings for Ruby, .NET, Python, Node.js, Rust, and more.

Because it is a shared C library with many language bindings, package managers ship libgit2 as infrastructure for other packages. Its releases matter to downstreams when Git compatibility, transport security, SHA-1/SHA-256 behavior, or ABI stability changes.

How it is used

Applications use libgit2 to open repositories, inspect objects and references, read and write commits, perform network operations, and embed Git workflows without shelling out to the Git CLI.

The library is especially attractive for IDEs, Git GUI clients, web services, and language ecosystems that want native bindings. The included git2 executable is secondary; the main value is the API surface.

Why package nerds care

libgit2 is one of the canonical examples of turning a famous CLI tool's behavior into a stable embeddable library. For package nerds, the interesting part is not just Git support; it is ABI management, language binding compatibility, bundled-versus-system crypto and SSH choices, and the long path to a 1.0 library release.

It also explains why some packages depend on libgit2 even when Git itself is installed: they need in-process repository operations and predictable APIs, not subprocess output.

Timeline

  • 2008: Shawn Pearce had started libgit2 by the period described in GitHub's 2010 announcement.
  • 2010: GitHub announced renewed libgit2 work after a Google Summer of Code effort by Vicent Marti.
  • 2020: libgit2 0.99 was released on 19 February 2020 as the project approached 1.0.
  • 2020: libgit2 1.0 was announced on 1 April 2020.
  • 2024: Maintainers stated that libgit2 v1.9 was expected to be the final v1.x release line.
  • 2025: libgit2 v1.9.2 release notes documented security fixes for external SSH execution and SSH credential creation.

Related projects

  • Git is the reference command-line system whose repository behavior libgit2 implements as a library. Rugged, pygit2, NodeGit, git2-rs, and .NET bindings are language-level entry points. GitHub, GitLab, Bitbucket-style forges, IDEs, and desktop Git clients are common application categories cited by project material.

security posture

Risk level: green

library-like package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • library-like package without higher-risk signals

Signals

  • metadata:library-like

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 2 runtime dependencies.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
git2cliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.9.4
manager updated2026-05-22
local dataok
upstreamcurrent
latest detectedv1.9.4

https://github.com/libgit2/libgit2

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:libgit2
Version1.9.4
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/libgit2
Homepagehttps://libgit2.org/
Repositoryhttps://github.com/libgit2/libgit2
Upstream docshttps://libgit2.org/docs
LicenseGPL-2.0-only WITH GCC-exception-2.0
Source archivehttps://github.com/libgit2/libgit2/archive/refs/tags/v1.9.4.tar.gz
Last updated2026-05-22T13:50:55Z
Pulseupdated
Dependencieslibssh2, llhttp
Build dependenciescmake, pkgconf
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namelibgit2
Aliases
  • libgit2@1.9
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

libgit2-1.9 1.9.0+ds-2

low-level Git library

https://libgit2.github.com/

sudo apt install libgit2-1.9
  • Section: libs
  • Architecture: amd64
  • Source Package: libgit2
  • 9 dependencies
  • normalized package name match
  • Matched by: Libgit2
Debian stable package indexes · deb.debian.org · Debian stable package indexes: libgit2-1.9 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

libgit2-dev 1.9.0+ds-2

low-level Git library (development files)

https://libgit2.github.com/

sudo apt install libgit2-dev
  • Section: libdevel
  • Architecture: amd64
  • Source Package: libgit2
  • 6 dependencies
  • normalized package name match
  • Matched by: Libgit2
Debian stable package indexes · deb.debian.org · Debian stable package indexes: libgit2-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Debian apt95%

libgit2-fixtures 1.9.0+ds-2

low-level Git library - test suite examples

https://libgit2.github.com/

sudo apt install libgit2-fixtures
  • Section: libs
  • Architecture: all
  • Source Package: libgit2
  • normalized package name match
  • Matched by: Libgit2
Debian stable package indexes · deb.debian.org · Debian stable package indexes: libgit2-fixtures from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

libgit2

nix profile install nixpkgs#libgit2
  • normalized package name match
  • Matched by: Libgit2
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/li/libgit2/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
Ubuntu apt95%

libgit2-1.7 1.7.2+ds-1ubuntu3

low-level Git library

https://libgit2.github.com/

sudo apt install libgit2-1.7
  • Section: libs
  • Architecture: amd64
  • Source Package: libgit2
  • 7 dependencies
  • normalized package name match
  • Matched by: Libgit2
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: libgit2-1.7 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz
Ubuntu apt95%

libgit2-dev 1.7.2+ds-1ubuntu3

low-level Git library (development files)

https://libgit2.github.com/

sudo apt install libgit2-dev
  • Section: libdevel
  • Architecture: amd64
  • Source Package: libgit2
  • 6 dependencies
  • normalized package name match
  • Matched by: Libgit2
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: libgit2-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz
Ubuntu apt95%

libgit2-fixtures 1.7.2+ds-1ubuntu3

low-level Git library - test suite examples

https://libgit2.github.com/

sudo apt install libgit2-fixtures
  • Section: universe/libs
  • Architecture: all
  • Source Package: libgit2
  • normalized package name match
  • Matched by: Libgit2
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: libgit2-fixtures from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

libgit2 1.9.4-r1

linkable library for Git

https://libgit2.org/

sudo apk add libgit2
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2 from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

libgit2-dbg 1.9.4-r1

linkable library for Git (debug symbols)

https://libgit2.org/

sudo apk add libgit2-dbg
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • 1 dependencies
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

libgit2-dev 1.9.4-r1

linkable library for Git (development files)

https://libgit2.org/

sudo apk add libgit2-dev
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

libgit2-static 1.9.4-r1

linkable library for Git (static library)

https://libgit2.org/

sudo apk add libgit2-static
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • 1 dependencies
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2-static from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

libgit2-tests 1.9.4-r1

linkable library for Git (tests)

https://libgit2.org/

sudo apk add libgit2-tests
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2-tests from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

libgit2-tools 1.9.4-r1

linkable library for Git (tools)

https://libgit2.org/

sudo apk add libgit2-tools
  • License: GPL-2.0-only WITH GCC-exception-2.0
  • Architecture: x86_64
  • Source Package: libgit2
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Libgit2
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: libgit2-tools from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
dnf95%

libgit2 1.9.4-1.fc45

C implementation of the Git core methods as a library with a solid API

https://libgit2.org/

sudo dnf install libgit2
  • License: GPL-2.0-only WITH GCC-exception-2.0 AND MIT AND LicenseRef-Fedora-Public-Domain AND Apache-2.0 AND SSLeay-standalone AND BSD-2-Clause AND NCSA AND Unlicense
  • Category: Unspecified
  • Architecture: i686
  • Source Package: libgit2
  • 8 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Libgit2
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: libgit2 from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
dnf95%

libgit2-devel 1.9.4-1.fc45

Development files for libgit2

https://libgit2.org/

sudo dnf install libgit2-devel
  • License: GPL-2.0-only WITH GCC-exception-2.0 AND MIT AND LicenseRef-Fedora-Public-Domain AND Apache-2.0 AND SSLeay-standalone AND BSD-2-Clause AND NCSA AND Unlicense
  • Category: Unspecified
  • Architecture: i686
  • Source Package: libgit2
  • 5 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Libgit2
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: libgit2-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

libgit2 1:1.9.4-1

A linkable library for Git

https://github.com/libgit2/libgit2

sudo pacman -S libgit2
  • License: LicenseRef-GPL-2.0-only-with-linking-exception
  • Architecture: x86_64
  • 11 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Libgit2
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: libgit2 from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment