GitHydra 🐍
أداة شاملة لإدارة Git مع واجهة طرفية جميلة
Comprehensive Git Automation CLI Tool with Beautiful Terminal UI
English Documentation
🚀 Overview
GitHydra is a powerful Python-based command-line tool that transforms Git into an intuitive, beautiful experience. Built with Rich for stunning terminal UI, Click for robust CLI framework, and GitPython for seamless Git integration.
✨ Features
13 Feature Categories | 33 Command Groups | 70+ Operations
1️⃣ Repository Operations
- Initialize repositories
- View detailed status
- Clone with progress tracking
2️⃣ File & Staging
- Interactive staging area
- Smart file selection
- Stage/unstage management
3️⃣ Commits & History
- Beautiful commit creation
- Rich history viewer with graph
- Advanced search and filtering
4️⃣ Branches
- Create, delete, rename branches
- Switch branches seamlessly
- Track remote branches
5️⃣ Remote & Sync
- Manage remotes
- Push/pull/fetch operations
- Smart sync strategies
6️⃣ Advanced Operations
- Stash management
- Tag creation
- Reset, revert, cherry-pick
- Enhanced diff viewer
7️⃣ Submodules & Worktrees
- Submodules: add, init, update, status, sync, foreach, deinit
- Worktrees: create multiple working trees, list, remove, prune, lock/unlock, move
8️⃣ Debugging & Search
- Bisect: Binary search to find bugs
- Blame: Line-by-line authorship with statistics
- Reflog: View and manage reference logs
9️⃣ Patches & Bundles
- Patches: Create, apply, format patches
- Bundles: Transport repositories via bundle files
🅰️ Conflicts & Merging
- List conflicted files
- Accept ours/theirs strategies
- Launch merge tools
- Abort operations safely
🅱️ Statistics & Analysis
- Repository overview
- Contributor statistics
- Activity analysis
- File statistics
- Language distribution
©️ Maintenance & Repair
- Archive creation (zip, tar, tar.gz)
- Clean untracked files
- Repository integrity checks
- Garbage collection
🅳 Configuration
- Git config management
- Command aliases
- User preferences
📦 Installation
Quick Install
pip install -e .
Manual Installation
git clone <repository-url>
cd githydra
pip install -r requirements.txt
🎯 Usage
Interactive Mode (Recommended)
githydra interactive
# or
python githydra.py interactive
Command Line Mode
githydra status
githydra commit -m "Your message"
githydra branch list
githydra log --graph
githydra submodule add <url>
githydra statistics overview
githydra compare branches main develop
Available Commands
githydra --help
githydra <command> --help
📋 Command Examples
Repository Operations
githydra init [path] # Initialize repository
githydra status # Show status
githydra clone <url> # Clone repository
Staging & Commits
githydra stage add --interactive # Interactive staging
githydra commit -m "message" # Create commit
githydra log --graph --limit 20 # View history
Branch Management
githydra branch create feature # Create branch
githydra branch switch develop # Switch branch
githydra branch delete old-branch # Delete branch
Remote Operations
githydra remote add origin <url> # Add remote
githydra sync push # Push changes
githydra sync pull # Pull changes
Advanced Features
githydra stash save -m "WIP" # Stash changes
githydra tag create v1.0 # Create tag
githydra bisect start # Start bisect
githydra blame src/main.py # Show authorship
githydra archive create --format zip # Create archive
Statistics & Analysis
githydra statistics overview # Repository stats
githydra statistics contributors # Contributor stats
githydra statistics activity # Activity analysis
Debugging Tools
githydra bisect start # Find bugs
githydra blame <file> # Line authorship
githydra reflog show # View reflog
🎨 Features Highlights
- Beautiful UI: Rich terminal interface with colors, tables, and progress bars
- Interactive Menus: User-friendly navigation through all features
- Comprehensive Logging: All operations logged to
~/.githydra/logs/ - Smart Error Handling: Graceful error messages and recovery
- Configuration: Customizable via
~/.githydra/config.yaml - Aliases: Create shortcuts for frequent commands
- Progress Tracking: Visual feedback for long operations
- Git Integration: Seamless GitPython backend
📁 Project Structure
githydra/
├── githydra.py # Main entry point
├── src/
│ ├── commands/ # All command implementations
│ ├── ui/ # Rich UI components
│ ├── utils/ # Utility functions
│ └── logger.py # Logging system
├── setup.py # Installation script
├── requirements.txt # Dependencies
└── README.md # This file
🔧 Configuration
GitHydra stores configuration in ~/.githydra/:
config.yaml- User preferencesaliases.yaml- Command aliaseslogs/- Operation logs by date
🤝 Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
📄 License
MIT License - Feel free to use and modify.
🐛 Bug Reports
Found a bug? Please open an issue with:
- GitHydra version
- Python version
- Error message
- Steps to reproduce
التوثيق العربي
🚀 نظرة عامة
GitHydra هي أداة قوية مبنية على Python لإدارة Git بواجهة طرفية جميلة وسهلة الاستخدام. مبنية باستخدام Rich لواجهة المستخدم، Click لإطار CLI، وGitPython للتكامل مع Git.
✨ المميزات
13 فئة | 33 مجموعة أوامر | أكثر من 70 عملية
1️⃣ عمليات المستودع
- تهيئة المستودعات
- عرض الحالة التفصيلية
- الاستنساخ مع تتبع التقدم
2️⃣ الملفات والتجهيز
- منطقة تجهيز تفاعلية
- اختيار ذكي للملفات
- إدارة التجهيز/إلغاء التجهيز
3️⃣ الالتزامات والتاريخ
- إنشاء التزامات جميلة
- عارض تاريخ غني بالرسوم البيانية
- البحث والتصفية المتقدمة
4️⃣ الفروع
- إنشاء وحذف وإعادة تسمية الفروع
- التبديل بين الفروع بسلاسة
- تتبع الفروع البعيدة
5️⃣ البعيد والمزامنة
- إدارة المستودعات البعيدة
- عمليات الدفع/السحب/الجلب
- استراتيجيات المزامنة الذكية
6️⃣ العمليات المتقدمة
- إدارة التخزين المؤقت
- إنشاء الوسوم
- إعادة التعيين والاستعادة واختيار الكرز
- عارض الفروقات المحسّن
7️⃣ الوحدات الفرعية وأشجار العمل
- الوحدات الفرعية: إضافة، تهيئة، تحديث، حالة، مزامنة
- أشجار العمل: إنشاء أشجار عمل متعددة، قائمة، إزالة
8️⃣ التصحيح والبحث
- Bisect: بحث ثنائي لإيجاد الأخطاء
- Blame: معرفة من كتب كل سطر
- Reflog: عرض وإدارة سجلات المراجع
9️⃣ التصحيحات والحزم
- التصحيحات: إنشاء وتطبيق التصحيحات
- الحزم: نقل المستودعات عبر ملفات الحزم
🅰️ التعارضات والدمج
- قائمة الملفات المتعارضة
- قبول استراتيجيات "لنا" أو "لهم"
- تشغيل أدوات الدمج
- إلغاء العمليات بأمان
🅱️ الإحصائيات والتحليلات
- نظرة عامة على المستودع
- إحصائيات المساهمين
- تحليل النشاط
- إحصائيات الملفات
- توزيع اللغات
©️ الصيانة والإصلاح
- إنشاء الأرشيفات (zip, tar, tar.gz)
- تنظيف الملفات غير المتتبعة
- فحص سلامة المستودع
- جمع القمامة
🅳 التكوين
- إدارة إعدادات Git
- الاختصارات
- تفضيلات المستخدم
📦 التثبيت
التثبيت السريع
pip install -e .
التثبيت اليدوي
git clone <repository-url>
cd githydra
pip install -r requirements.txt
🎯 الاستخدام
الوضع التفاعلي (موصى به)
githydra interactive
# أو
python githydra.py interactive
وضع سطر الأوامر
githydra status
githydra commit -m "رسالتك"
githydra branch list
githydra log --graph
githydra submodule add <url>
githydra statistics overview
📋 أمثلة الأوامر
عمليات المستودع
githydra init [path] # تهيئة مستودع
githydra status # عرض الحالة
githydra clone <url> # استنساخ مستودع
التجهيز والالتزامات
githydra stage add --interactive # تجهيز تفاعلي
githydra commit -m "الرسالة" # إنشاء التزام
githydra log --graph --limit 20 # عرض التاريخ
إدارة الفروع
githydra branch create feature # إنشاء فرع
githydra branch switch develop # التبديل للفرع
githydra branch delete old-branch # حذف فرع
العمليات البعيدة
githydra remote add origin <url> # إضافة مستودع بعيد
githydra sync push # دفع التغييرات
githydra sync pull # سحب التغييرات
المميزات المتقدمة
githydra stash save -m "عمل جاري" # حفظ مؤقت
githydra tag create v1.0 # إنشاء وسم
githydra bisect start # بدء البحث الثنائي
githydra blame src/main.py # عرض المؤلف
githydra archive create --format zip # إنشاء أرشيف
الإحصائيات والتحليلات
githydra statistics overview # إحصائيات المستودع
githydra statistics contributors # إحصائيات المساهمين
githydra statistics activity # تحليل النشاط
🎨 المميزات البارزة
- واجهة جميلة: واجهة طرفية غنية بالألوان والجداول وأشرطة التقدم
- قوائم تفاعلية: تنقل سهل عبر جميع المميزات
- تسجيل شامل: جميع العمليات مسجلة في
~/.githydra/logs/ - معالجة ذكية للأخطاء: رسائل خطأ واضحة واستعادة تلقائية
- التكوين: قابل للتخصيص عبر
~/.githydra/config.yaml - الاختصارات: إنشاء اختصارات للأوامر المتكررة
- تتبع التقدم: ملاحظات مرئية للعمليات الطويلة
- تكامل Git: خلفية GitPython سلسة
🔧 التكوين
يخزن GitHydra التكوين في ~/.githydra/:
config.yaml- تفضيلات المستخدمaliases.yaml- اختصارات الأوامرlogs/- سجلات العمليات حسب التاريخ
👨💻 Developer / المطور
Name / الاسم: Abdulaziz Alqudimi
Email / البريد الإلكتروني: eng7mi@gmail.com
Repository / المستودع: https://github.com/Alqudimi/GitHydra
🤝 Contributing / المساهمة
Contributions are welcome! Feel free to submit issues or pull requests.
المساهمات مرحب بها! لا تتردد في إرسال المشاكل أو طلبات السحب.
📧 Contact / التواصل
For questions, suggestions, or support:
- Email: eng7mi@gmail.com
- GitHub Issues: https://github.com/Alqudimi/GitHydra/issues
للأسئلة أو الاقتراحات أو الدعم:
- البريد الإلكتروني: eng7mi@gmail.com
- مشاكل GitHub: https://github.com/Alqudimi/GitHydra/issues
📄 License / الترخيص
MIT License - Free to use and modify.
ترخيص MIT - يمكنك الاستخدام والتعديل بحرية.
🐛 Bug Reports / الإبلاغ عن الأخطاء
Found a bug? Please open an issue with:
- GitHydra version / إصدار GitHydra
- Python version / إصدار Python
- Error message / رسالة الخطأ
- Steps to reproduce / خطوات إعادة الإنتاج
Metadata
Release files for githydra 3.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| githydra-3.1.0.tar.gz | 57.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| githydra-3.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 127.0 kB
Release files / githydra-3.1.0.tar.gz
| Download URL | githydra-3.1.0.tar.gz |
|---|---|
| Size | 57.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e412383dfa9e47664a90ff3ae660037b60bb4626ab16abac96263781c32fdc80
|
|
BLAKE2b-256 checksum How to use checksums |
1596289802b80ed60cae304afb454c4924bab33e5b1e0504825efd2921ce95f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|
Release files / githydra-3.1.0-py3-none-any.whl
| Download URL | githydra-3.1.0-py3-none-any.whl |
|---|---|
| Size | 69.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
08c38682a8f4099e9e61282061df52927115e5b16fcc6361c09de3ba2e4497f7
|
|
BLAKE2b-256 checksum How to use checksums |
906444ab670a2c31638f81abeb17391062a45fe8790e25ded8adc54987fbddc9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.11
|