GitKtti™ - Git Flow Made Simple
Description: GitKtti™ is a powerful collection of Perl scripts designed to simplify Git Flow workflow for developers

# GitKtti™

Git Flow Made Simple

A modern CPAN-ready collection of tools designed to streamline your Git Flow workflow

View on GitHub

## 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 `cpan 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 `cpan 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) $ cpan 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`