Skip to content

Merge is an interactive, command line interface application designed to simplify and accelerate Git merge conflict resolution.

Notifications You must be signed in to change notification settings

skandrigi/MergeCLI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Merge 🍒

Merge is an interactive, command line interface application designed to simplify and accelerate Git merge conflict resolution. It provides a visual interface for navigating through conflicting files and offers several options for handling conflicts: accepting the current version, incoming changes, or both.

Merge integrates conflict detection, resolution, and staged merging into a unified and easy-to-use experience. This changes the developer experience for beginners who often struggle with understanding merge conflicts.


Features

  • ✅ Conflict Detection and Highlighting: Detects merge conflicts in selected files and highlights them with clear separation between current and incoming changes.
  • ⚙️ Multiple Resolution Options: Allows you to resolve conflicts by accepting the current changes, incoming changes, a combination of both, or AI-suggested resolutions.
  • 🤖 AI-Powered Suggestions: Integration with OpenAI provides suggestions based on context, assisting in complex conflict resolution.
  • 💻 Keyboard Bindings: Streamlined keyboard navigation and shortcuts enable rapid conflict resolution.
  • 🤩 Visual Conflict Indicators: A user-friendly, color-coded display that helps users visually track the sections of code in conflict.
  • 🛎️ Temporary Alerts: Briefly displays pop-up notifications to guide and inform you during the resolution process.

Getting Started

Prerequisites

  • Python 3.7 or later with the textual and uv libraries installed.

Installation

  1. Clone the repository:

    git clone https://github.com/your-username/mergr.git
    cd mergr
  2. Install required dependencies:

    uv sync
  3. (Optional) Set up your OpenAI API key for AI-powered conflict suggestions.

    export OPENAI_API_KEY=<sk-yourkey>

Running the App

To start the application, use:

uv run main.py

About

Merge is an interactive, command line interface application designed to simplify and accelerate Git merge conflict resolution.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages