fogit

command module
v1.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 2, 2026 License: MIT Imports: 7 Imported by: 0

README

FoGit

CI Go Report Card Go Reference GitHub Release

FoGit (Feature-Oriented Git) - A Git-native feature tracking system.

Overview

FoGit tracks features, requirements, and design elements as first-class entities alongside your code. While Git tracks files and lines, FoGit tracks features and relationships.

Installation

# Using Go (recommended - easiest updates)
go install github.com/eg3r/fogit@latest

# Update to latest version
fogit self-update
Windows Installer

Download the MSI from releases.

Interactive install: Double-click the MSI and choose per-user or per-machine.

Silent install (command line):

# Per-user install (no admin required, recommended)
msiexec /i fogit_windows_amd64_setup.msi /quiet

# Per-machine install (requires admin)
msiexec /i fogit_windows_amd64_setup.msi /quiet ALLUSERS=1

# Silent uninstall
msiexec /x fogit_windows_amd64_setup.msi /quiet

Quick Start

# Initialize FoGit in your repository
fogit init

# Create a feature
fogit feature "User Authentication" -d "A login and signup feature"

# List features
fogit list

# Show feature details
fogit show "User Authentication"

# Link features
fogit link "User Authentication" "Database Schema" depends-on

# Search features
fogit search auth

# Commit with feature tracking
fogit commit -m "Add login form"

# Finish feature
fogit finish
# or 
fogit merge 

Key Features

  • Git-Native: Stores data in .fogit/ directory, versioned by Git
  • Human-Readable: YAML files with clear diffs in pull requests
  • Relationship-Aware: Track dependencies, compositions, references, conflicts
  • Flexible: User-defined features (code, design, requirements, specs)
  • Portable: Works with any Git hosting (GitHub, GitLab, Bitbucket)

Documentation

See the spec/ directory for complete documentation:

Development

git clone https://github.com/eg3r/fogit.git
cd fogit
git submodule update --init --recursive
go build -o fogit .
go test ./...
golangci-lint run

See CONTRIBUTING.md for detailed guidelines.

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
exchange
Package exchange provides import/export functionality for features.
Package exchange provides import/export functionality for features.
features
Package features provides business logic for FoGit feature management.
Package features provides business logic for FoGit feature management.
git
logger
Package logger provides structured logging for FoGit using Go's log/slog.
Package logger provides structured logging for FoGit using Go's log/slog.
testutil
Package testutil provides common test utilities and helpers for FoGit tests.
Package testutil provides common test utilities and helpers for FoGit tests.
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL