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.

Powerful Aliases

Short, memorable aliases transform long commands into quick operations. Boost your productivity with kfeat, kfix, and more.

🎯

Branch Management

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

🏷️

Version Control

Automated tagging and release management with semantic versioning support for professional software delivery.

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

kprune

Clean up merged local branches

Getting Started

Clone the repository and set up your environment:

# Clone the repository $ git clone https://github.com/saumon/gitktti.git # Add to your Perl library path $ export PERL5LIB=/path/to/gitktti/modules # Create aliases in your shell profile $ alias kfeat='/path/to/gitktti_fix.pl --mode feature' $ alias kfix='/path/to/gitktti_fix.pl' $ alias kreal='/path/to/gitktti_fix.pl --mode release' $ alias kfixend='/path/to/gitktti_fixend.pl' $ alias kmove='/path/to/gitktti_move.pl' $ alias kdel='/path/to/gitktti_delete.pl' $ alias kco='/path/to/gitktti_checkout.pl' $ alias kprune='/path/to/gitktti_fix.pl --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