pkg.sopackage field notes

brew / rank 6304

Install git-subrepo with Homebrew

Git Submodule Alternative. Version 0.4.9 via Homebrew; verified 2026-06-22.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install git-subrepo

provider-native install command

overview

Package summary

Git Submodule Alternative

Commands and aliases

  • git-subrepo

history

Project history and usage

git-subrepo is a Git extension for embedding external repositories into subdirectories while avoiding many workflow problems associated with submodules and subtrees.

Project history

The repository began in 2013 and framed git-subrepo as a solid alternative to Git submodule and subtree workflows. Its introductory documentation argues that users, collaborators, and repository owners have different needs, and that submodules especially impose knowledge and synchronization burdens on people who only want to clone and use a project.

The design stores subrepository metadata in a .gitrepo file inside the subdirectory, squashes pulls into the mainline history, and keeps refs for subrepo fetch and push workflows. A major 0.4.0-era redesign in 2018 shifted implementation details toward merge and rebase methods, with later 0.4.x releases improving testing, shell compatibility, path handling, Git version behavior, and completion scripts.

Adoption history

git-subrepo serves a persistent niche: projects that want vendored source trees with upstream synchronization but do not want users to run git submodule update. Its package-manager presence in Homebrew, Debian, Nix, and openSUSE-style packaging gives maintainers a packaged alternative for teams that reject Git submodules but still need upstream push and pull operations.

How it is used

Practitioners clone an external repository into a subdirectory, initialize an existing subdirectory as a subrepo, pull upstream updates, push local subdirectory changes back, inspect status, clean metadata refs, and rely on .gitrepo to mark and configure each embedded repository.

Why package nerds care

git-subrepo is important in package-maintenance culture because it addresses the recurring vendor-versus-submodule choice. It favors normal clone behavior for downstream users while preserving enough metadata for maintainers to synchronize embedded code with upstream projects.

Timeline

  • 2013: First public commit appeared in the GitHub repository.
  • 2015: 0.2.x and 0.3.0 tags marked early public releases.
  • 2018: 0.4.0 release documented a redesign around merge and rebase methods.
  • 2024: 0.4.7 through 0.4.9 releases included compatibility and packaging fixes.

Related projects

  • The project's own documentation compares it directly with git-submodule and git-subtree, and also discusses subtree merge strategies as related Git practice.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew bottle metadata was recorded.

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
git-subrepoexecutableindexed executableDiscovered from the local executable index.

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-08-03
manager version0.4.9
manager updated2026-06-22
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:git-subrepo
Version0.4.9
Package managerHomebrew
Homepagehttps://github.com/ingydotnet/git-subrepo
Repositoryhttps://github.com/ingydotnet/git-subrepo
Last updated2026-06-22T14:03:31-07:00
Pulseupdated
Bottlenot recorded
Servicenone declared

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
  • curated package history
  • pkgdb category and tag curation