# Trace: Understanding Duplicate Binaries for Chip Types

Agent: claude-code | Model: Claude Opus 4.6 | Project: git-pkgs

---

## User

question: why are there two of each binary here? 
Skip to content

    git-pkgs
    git-pkgs

Repository navigation

    Code
    Issues14 (14)
    Pull requests1 (1)
    Agents
    Discussions
    Actions
    Projects
    Wiki
    Security
    Insights
    Settings

    Releases v0.14.0 

v0.14.0 Latest
@github-actions github-actions released this 4 hours ago
v0.14.0
d140136
Changelog

    6902e47 Accept PURLs as package arguments in more commands
    e0f105e Add Hugo doc generator for website command reference
    f36345c Add dependency chain example to resolve docs
    01fbdac Add external plugin support
    800edd6 Add resolve command for dependency graph output
    5b4ec8c Add resolve documentation
    d23e780 Add urls command to show registry URLs for a package
    d27cd7e Add usage examples to resolve docs
    6159f43 Bump github.com/go-git/go-git/v5 from 5.16.4 to 5.16.5
    78a5648 Bump internal module deps to latest tags
    9cb16ea Default resolve output to tree format, add -f json flag
    f1d436f Fix diff not pairing version changes for duplicate packages
    e2d24b0 Fix plugin discovery and execution on Windows
    2d8adcf Optimize indexer performance: cache eviction, parallel flushes, fast PURL construction
    c3e7eab Parse resolve output into normalized JSON with PURLs
    4270c62 Update Go module dependencies

Assets 9

    checksums.txt
    sha256:f1ab27cc7ca0169641597fc55d1d1b1f3e17d0dafa69892764f420da1e0a93eb
    612 Bytes 4 hours ago
    git-pkgs_0.14.0_darwin_amd64.tar.gz
    sha256:a453e3d5fcde1e4bb49bcd02dbb6a06fc3c960e50cddc5d7e2e37c6c28773825
    6.19 MB 4 hours ago
    git-pkgs_0.14.0_darwin_arm64.tar.gz
    sha256:a242973fb2f9eee07d72d971b7b098376a48bba548c4da99dda19315b9c9bec2
    5.81 MB 4 hours ago
    git-pkgs_0.14.0_linux_amd64.tar.gz
    sha256:72613c59ac2add0eacd71ae26e6efea3d67d1db85d4b3a9624c8885c988c20c8
    6.09 MB 4 hours ago
    git-pkgs_0.14.0_linux_arm64.tar.gz
    sha256:7d010307bf62f7dd5300bd9e7d26955c15c6c09253482f3f5960783a12c5e1be
    5.6 MB 4 hours ago
    git-pkgs_0.14.0_windows_amd64.tar.gz
    sha256:7ce16a23b8635111808487c4172fd612b49ff789b608d84ca4b931a6131051dd
    6.23 MB 4 hours ago
    git-pkgs_0.14.0_windows_arm64.tar.gz
    sha256:c8125a74574c0695e272fdbe00d900711a4e91b15f4be22c65e3725559b20ffa
    5.64 MB 4 hours ago
    Source code (zip)
    4 hours ago
    Source code (tar.gz)
    4 hours ago

Footer
© 2026 GitHub, Inc.
Footer navigation

    Terms
    Privacy
    Security
    Status
    Community
    Docs
    Contact

Release v0.14.0 · git-pkgs/git-pkgs 

## Assistant

## Assistant

There aren't two of each - there are two *architectures* per operating system:

- **amd64** — Intel/AMD x86-64 chips
- **arm64** — ARM chips (Apple Silicon, AWS Graviton, Snapdragon, etc.)

So it's 3 OSes × 2 architectures = 6 binaries. Standard cross-compilation matrix for a Go project.

## User

oh 

## Assistant

Yeah, Go makes it easy to cross-compile for all those targets so you might as well ship them all.

## User

amd and arm read so similar

## Assistant

They really do. Doesn't help that they're both followed by "64" either. One of those naming choices that made sense to engineers and no one else.
