Why GitKtti™?

🌿

Git Flow Simplified

Automates complex Git Flow operations with simple, intuitive commands. Create feature branches, hotfixes, and releases effortlessly.

🛡️

Safe Operations

Built-in safeguards prevent accidental deletions of master/develop branches and ensure repository cleanliness before operations.

🔧

Interactive Interface

Smart selectors and interactive prompts guide you through operations, making complex Git workflows accessible to everyone.

CPAN Ready

Modern CPAN distribution with proper installation via cpanm App::GitKtti. Optional aliases available for power users.

🎯

Branch Management

Comprehensive branch operations including creation, renaming, deletion, and smart checkout with remote tracking support.

🏷️

Professional Tools

Complete suite with gitktti-tag, gitktti-tests, and comprehensive help system for professional development workflows.

Quick Reference

kfeat

Create feature branch from develop

kfix

Create hotfix branch from master

kreal

Create release branch from develop

kfixend

Finalize and merge current branch

kmove

Rename branch locally and remotely

kdel

Delete branch safely with confirmation

kco

Smart branch checkout with Git flow awareness

ktest

Run diagnostic tests

🚀 Version 2.0 - Modern Architecture

What's New in 2.0?

  • CPAN Distribution: Install with cpanm App::GitKtti
  • Modern Commands: gitktti-* instead of perl gitktti_*.pl
  • Better Documentation: Built-in help with --help on every command

Getting Started

Install GitKtti™ directly from CPAN or from source:

# Install from CPAN (Recommended) $ cpanm App::GitKtti # Or install from source $ git clone https://github.com/saumon/gitktti.git $ cd gitktti $ ./install.sh # Optional: Create convenient aliases $ alias kfeat='gitktti-fix --mode feature' $ alias kfix='gitktti-fix' $ alias kreal='gitktti-fix --mode release' $ alias kfixend='gitktti-fixend' $ alias kmove='gitktti-move' $ alias kdel='gitktti-delete' $ alias kco='gitktti-checkout' $ alias kprune='gitktti-fix --prune'

Typical Workflow

1. Start a new feature

Create a new feature branch from develop: kfeat --name user-authentication

2. Work on your feature

Make your changes, commit as usual. GitKtti™ doesn't interfere with your development process.

3. Finalize the feature

Merge back to develop and clean up: kfixend

4. Create a release

When ready for release: kreal to create a release branch

5. Handle hotfixes

For urgent fixes: kfix --name critical-security-patch