shredbx logo
shredbx shredbx shredbx shredbx Personal
  • Home
  • Lab
  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
AClaude
  • Home
  • Lab
  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
Andrei Solovev
Packages
Search packages... ⌘K
  • Data & Persistence
    • Databases 3
    • Object Storage 1
    • File Formats 2
    • Enumerations 2
    • Content 1
    • Codegen 2
  • System Integration
    • Secrets 1
    • CLI Tools 5
    • Media Processing 2
    • Adapters 2
  • UI & Components
    • Primitives 1
    • Blocks 1
    • Sections & Layouts 1
    • Entities 1
    • Media 1
    • Utilities 1
    • State & Presenter 1
    • Branding & Style 1
  • Game Engine
    • Framework 1
    • Engine 2
    • Presets 1
    • Vendor 1
Packages/ System Integration/ CLI Tools/ Gitcli
Go Package

gitcli

Git CLI wrapper — branch operations, commit, status, diff with structured output

Go Ready SI
Git Operations
$ g := gitcli.NewGit("/workspace/shredbx")
$ status, _ := g.Status(ctx)
[git] branch: feature/packages-page
[git] staged: 3 files
[git] modified: 2 files
[git] untracked: 1 file
$ result, _ := g.Commit(ctx, "feat: add package detail view")
[git] commit: a3f2b9c feat: add package detail view
[git] 3 files changed, 142 insertions(+), 8 deletions(-)

About

Wraps the git CLI binary with typed Go functions that return structured output instead of raw text. Handles branch creation, status parsing, diff generation, and commit operations with proper error classification.

Public API

NameKindSignature
Gittypetype Git struct
NewGitfuncfunc NewGit(repoPath string) *Git
Statusfuncfunc (g *Git) Status(ctx context.Context) (*StatusResult, error)
Commitfuncfunc (g *Git) Commit(ctx context.Context, msg string, opts ...CommitOption) (*CommitResult, error)
Branchfuncfunc (g *Git) Branch(ctx context.Context, name string, opts ...BranchOption) error
Difffuncfunc (g *Git) Diff(ctx context.Context, opts ...DiffOption) (*DiffResult, error)

Dependencies

Imports (1)

external Go Ready

External process runner — exec.Command wrapper with timeout, output capture, error handling

execprocess-runnertimeoutoutput-capture
5 exports 7 deps

Imported By (1)

worktree Go Ready

Git worktree manager — create, list, remove worktrees with Docker integration

git-worktreeisolationdocker-integrationparallel-dev
5 exports 2 deps

Related Packages

worktree Go Ready

Git worktree manager — create, list, remove worktrees with Docker integration

git-worktreeisolationdocker-integrationparallel-dev
5 exports 2 deps
external Go Ready

External process runner — exec.Command wrapper with timeout, output capture, error handling

execprocess-runnertimeoutoutput-capture
5 exports 7 deps

Source

github.com/shredbx/sbx-core/pkg/gitcli
gitcli-wrapperstructured-outputbranch-ops
shredbx logo shredbx shredbx shredbx shredbx Andrei Solovev

Solution Architect & Lead Software Engineer

ExperiencePortfolioResearch & ExperimentsEducationCertificationSkills
GitHub ↗LinkedIn ↗Email ↗
AVAILABLE FOR NEW PROJECTS
// MY LATEST BEATS
Hobby & Interests

Lab

  • The Lab
  • Framework
  • Components
  • Packages
  • Games
  • Process (SDLC)
  • Knowledge
  • Blog

Andrei

  • Portfolio
  • Experience
  • Services
  • Profile
  • Contact
  • Lifestyle

Team

  • Team
  • Andrei
  • Claude

Legal

  • Privacy
  • Terms
  • Cookies
© 2026 shredbx.com. All rights reserved. — Andrei Solovev |