Skip to content

baiiiij/easy_git_branch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Git Event Manager

Git Event Manager is a graphical user interface application based on Tkinter for managing events in a Git repository. The core code was initially generated by an AI language model and subsequently modified and optimized for better functionality and user experience.

Project Background

This project combines AI-generated code with human modifications to create a practical Git management tool. The base implementation was generated using a large language model, with subsequent refinements and optimizations made to enhance functionality, improve error handling, and ensure better user experience.

Overview of Features

  • Select Git Repository Path: Users can select a local Git repository for management.
  • Branch Creation: Supports creating new branches based on prefix, date, and custom suffix.
  • Merge Operations: Allows selecting multiple branches or tags for merging.
  • Tag Creation: Supports creating new tags based on prefix, date, and custom suffix.
  • Event History: View and search historical events, including branch and tag creation, merge information, etc.
  • Push to Remote: Supports pushing the current branch and tag to the remote repository.
  • Git User Information Configuration: Checks and configures Git username and email.

Technical Implementation

The application is built using:

  • Python 3.x
  • Tkinter for GUI
  • GitPython for Git operations
  • Object-oriented programming principles
  • AI-assisted code generation with human optimization

Requirements

  • Python 3.x
  • Tkinter library (usually comes with Python)
  • GitPython library

Installation

Install the required dependencies:

pip install gitpython

Running the Application

Navigate to the project directory and run:

python main.py

Usage Guide

Basic Operations

  1. Repository Selection

    • Click "Browse" to select a Git repository
    • The application will automatically load repository information
  2. Branch Management

    • Enable branch creation
    • Select prefix type or enter custom prefix
    • Add custom suffix and date if needed
    • Create new branch with generated name
  3. Merge Operations

    • Select source branches/tags
    • Execute merge operation
    • View merge results in history
  4. Tag Management

    • Create tags with custom naming patterns
    • Manage existing tags
    • Push tags to remote
  5. History Tracking

    • View complete operation history
    • Search through past events
    • Access detailed information for each operation

Best Practices

  • Always verify the repository path before operations
  • Review generated names before creating branches or tags
  • Check merge conflicts before confirming operations
  • Verify remote repository permissions before pushing

Development Notes

  • The core functionality was initially generated using AI
  • Code structure and error handling have been manually optimized
  • GUI layout and user interaction flows have been refined based on testing
  • Additional features can be added through the existing framework

Contributing

Contributions are welcome! Please feel free to:

  • Submit bug reports
  • Propose new features
  • Submit pull requests
  • Improve documentation

License

This project is licensed under the MIT License. See the LICENSE file for details.

Acknowledgments

  • Initial code generation: Large Language Model AI
  • Code optimization and refinement: Project maintainers
  • GitPython library developers
  • Python Tkinter community

For questions, issues, or suggestions, please open an issue in the repository.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published