Skip to content

Introduction

Gitmars is an efficient Git workflow tool designed for team collaboration and high-frequency release scenarios.

Why Gitmars?

  • 🚀 Efficient - Auto branch switching and code pulling after actions
  • 🧠 Smart - Intelligent command detection and navigation
  • 🛡️ Safe - Built-in operation detection to prevent non-compliant operations
  • 📦 Zero Config - Works out of the box with customizable settings
  • 🔧 Flexible - Multi-environment support for various Git branching models
  • 📖 Well Documented - Detailed API documentation and examples

How It Works

Monday-Wednesday: Release minor versions with bug fixes only, create bugfix/xxxx branches from bug branch. Thursday-Friday: Release major versions with new features and bug fixes, create feature/xxxx branches from release branch.

1. Each gitmars subcommand has help functionality, use gitm [command] --help
2. <type> means required; [type] means optional; [-a --app [app]] where -a is shorthand

Quick Start

shell
# Install
# Note: Windows users need to install Python first
npm install -g gitmars
# or
yarn global add gitmars

# Create gitmars config
cd my-project
gitm init

# Create feature branch
gitm start feature 10000

# Merge feature/10000 to develop
gitm combine -d

# Finish development
gitm end

Workflow Models

Dual Main Branch Model

Dual Main Branch

Monday to Wednesday: Release minor versions with bug fixes only, create bugfix/xxxx branches from bug branch. Thursday to Friday: Release major versions with new features and bug fixes, create feature/xxxx branches from release branch.

Single Main Branch Model

Single Main Branch

Environment Support

EnvironmentSupport
macOS
Linux
Windows✅ (requires Python)
Node.js✅ >= 14

Commands

CommandDescription
gitm initInitialize config
gitm configView/set config
gitm startCreate branch
gitm combineBranch testing stage
gitm endFinish development
gitm updateUpdate branch
gitm goSmart navigation
gitm copyCherry-pick simplified
gitm branchBranch operations
gitm undoUndo commit
gitm redoRedo commit
gitm statusView branch status
gitm cleanbranchClean branches
gitm upgradeUpgrade gitmars

See API Reference for complete command list.

Why Not GitFlow?

GitFlow doesn't support high-frequency releases. Gitmars is designed for such scenarios with dual and single main branch models.

License

GPL-3.0 License

Released under the GPL-3.0 License.