diff --git a/other-sheets/git-cheat-sheet-ar.md b/other-sheets/git-cheat-sheet-ar.md
index 60453fb..a20ffff 100644
--- a/other-sheets/git-cheat-sheet-ar.md
+++ b/other-sheets/git-cheat-sheet-ar.md
@@ -1,653 +1,866 @@
-# Git Cheat Sheet العربية
+# الدليل المرجعي لـ Git و Git Flow
+[](https://github.com/sindresorhus/awesome)
-
-
-دليل مرجعي سريع لأكثر أوامر Git استخداماً، منظم حسب الفئات لسهولة الاستخدام.
+
+
+
---
## 📖 حول هذا الدليل
-هذا الدليل المرجعي لـ Git هو مرجع شامل لكل من يريد تحسين سير عمله مع Git. من المبتدئين الذين يبدؤون رحلتهم مع Git إلى المطورين ذوي الخبرة، يوفر هذا الدليل أوامر منظمة ومصنفة لتسريع رحلة التطوير الخاصة بك.
+هذا الدليل المرجعي الشامل لـ Git يساعدك على إتقان أوامر Git دون الحاجة لحفظ كل شيء. سواء كنت مبتدئاً أو مطوراً ذا خبرة، يوفر هذا الدليل مرجعاً سريعاً لعمليات Git الأساسية.
-### الميزات الرئيسية:
-- **فئات منظمة**: الأوامر مرتبة في مجموعات واضحة ومنطقية
-- **أمثلة عملية**: مع حالات استخدام من العالم الحقيقي
-- **مناسب للمبتدئين**: مع شروحات واضحة ونصائح
-- **مرجع فوري**: وصول سريع للأوامر الأساسية
+**نرحب بالمساهمات!** لا تتردد في:
+- إصلاح الأخطاء الإملائية
+- إضافة أوامر جديدة
+- الترجمة إلى لغتك
+- تحسين الشروحات
---
-
-## 📑 جدول المحتويات
-
-- [🔧 الإعداد الأولي](#الإعداد-الأولي)
-- [⚙️ ملفات الإعداد](#ملفات-الإعداد)
-- [📁 إعداد المستودع](#إعداد-المستودع)
-- [📊 أوامر الحالة](#أوامر-الحالة)
-- [📝 إدارة الملفات](#إدارة-الملفات)
-- [💾 التثبيتات (Commits)](#التثبيتات-commits)
-- [🌿 الفروع (Branches)](#الفروع-branches)
-- [🔀 الدمج (Merge)](#الدمج-merge)
-- [🌐 المستودعات البعيدة](#المستودعات-البعيدة)
-- [📚 السجل والتاريخ](#السجل-والتاريخ)
-- [🔍 البحث](#البحث)
-- [📋 النقل/إعادة التسمية](#النقل-إعادة-التسمية)
-- [🏷️ العلامات (Tags)](#العلامات-tags)
-- [↩️ التراجع عن التغييرات](#التراجع-عن-التغييرات)
-- [📦 المخزن المؤقت (Stash)](#المخزن-المؤقت-stash)
-- [🌊 Git Flow](#git-flow)
-- [💡 نصائح مفيدة](#نصائح-مفيدة)
-- [🌍 لغات أخرى](#لغات-أخرى)
-- [🤝 المساهمة](#المساهمة)
-- [📄 الترخيص](#الترخيص)
-- [📖 مصادر إضافية](#مصادر-إضافية)
+## 📋 جدول المحتويات
+
+- [🔧 الإعداد](#-الإعداد)
+- [⚙️ ملفات الإعداد](#️-ملفات-الإعداد)
+- [🆕 إنشاء مستودع](#-إنشاء-مستودع)
+- [📝 التغييرات المحلية](#-التغييرات-المحلية)
+- [🔍 البحث](#-البحث)
+- [📖 سجل الإيداعات](#-سجل-الإيداعات)
+- [📁 النقل / إعادة التسمية](#-النقل--إعادة-التسمية)
+- [🌿 الفروع والعلامات](#-الفروع-والعلامات)
+- [🔄 التحديث والنشر](#-التحديث-والنشر)
+- [🔀 الدمج وإعادة التأسيس](#-الدمج-وإعادة-التأسيس)
+- [↩️ التراجع](#️-التراجع)
+- [🌊 Git Flow](#-git-flow)
+- [🌍 لغات أخرى](#-لغات-أخرى)
---
-## 🔧 الإعداد الأولي
+## 🔧 الإعداد
-إعداد Git بمعلوماتك الشخصية:
+### عرض الإعدادات
+**عرض الإعدادات الحالية:**
```bash
-# إعداد اسم المستخدم
-git config --global user.name "اسمك"
-
-# إعداد البريد الإلكتروني
-git config --global user.email "email@example.com"
-
-# عرض الإعدادات الحالية
git config --list
+```
-# إعداد المحرر الافتراضي
-git config --global core.editor "nano"
+**عرض إعدادات المستودع:**
+```bash
+git config --local --list
+```
-# إعداد أداة المقارنة
-git config --global merge.tool vimdiff
+**عرض الإعدادات العامة:**
+```bash
+git config --global --list
```
----
+**عرض إعدادات النظام:**
+```bash
+git config --system --list
+```
-## ⚙️ ملفات الإعداد
+### إعداد المستخدم
-يتم تخزين إعدادات Git على ثلاثة مستويات:
+**تعيين اسمك لسجل الإصدارات:**
+```bash
+git config --global user.name "[firstname lastname]"
+```
-| المستوى | موقع الملف | الأمر | الوصف |
-|---------|------------|-------|--------|
-| **System** | `/etc/gitconfig` | `--system` | إعدادات على مستوى النظام لجميع المستخدمين |
-| **Global** | `~/.gitconfig` أو `~/.config/git/config` | `--global` | إعدادات للمستخدم الحالي |
-| **Local** | `.git/config` | `--local` (افتراضي) | إعدادات للمستودع الحالي |
+**تعيين بريدك الإلكتروني:**
+```bash
+git config --global user.email "[valid-email]"
+```
+### إعدادات العرض والمحرر
+
+**تفعيل التلوين التلقائي لسطر الأوامر:**
```bash
-# عرض مستوى الإعداد
-git config --show-origin user.name
+git config --global color.ui auto
+```
-# تعيين إعداد على مستوى محدد
-git config --local user.name "اسم المشروع"
-git config --global user.email "global@example.com"
+**تعيين المحرر العام للإيداعات:**
+```bash
+git config --global core.editor vi
```
---
-## 📁 إعداد المستودع
+## ⚙️ ملفات الإعداد
+
+| النطاق | الموقع | خيار الأمر |
+|--------|--------|------------|
+| **المستودع** | `/.git/config` | `--local` |
+| **المستخدم** | `~/.gitconfig` | `--global` |
+| **النظام** | `/etc/gitconfig` | `--system` |
+
+---
-### إنشاء مستودع جديد:
+## 🆕 إنشاء مستودع
+### استنساخ مستودع موجود
+
+**عبر SSH:**
```bash
-# إنشاء مستودع Git جديد
-git init
+git clone ssh://user@domain.com/repo.git
+```
+
+**عبر HTTPS:**
+```bash
+git clone https://domain.com/user/repo.git
+```
-# نسخ مستودع موجود
-git clone <رابط-المستودع>
+### تهيئة مستودع جديد
-# نسخ إلى مجلد محدد
-git clone <رابط-المستودع> <اسم-المجلد>
+**إنشاء مستودع في المجلد الحالي:**
+```bash
+git init
+```
+
+**إنشاء مستودع في مجلد محدد:**
+```bash
+git init
```
---
-## 📊 أوامر الحالة
+## 📝 التغييرات المحلية
-### فحص حالة المستودع:
+### فحص الحالة والاختلافات
+**عرض حالة مجلد العمل:**
```bash
-# عرض الحالة الحالية للمستودع
git status
+```
-# عرض الحالة بصيغة مختصرة
-git status -s
+**عرض التغييرات في الملفات المتتبعة:**
+```bash
+git diff
+```
-# عرض الحالة متجاهلاً الملفات غير المتتبعة
-git status --ignored
+**عرض التغييرات في ملف محدد:**
+```bash
+git diff
+```
-# عرض الاختلافات في الملفات المعدلة
-git diff
+### تحضير التغييرات
-# عرض الاختلافات في منطقة التحضير
-git diff --staged
+**إضافة جميع التغييرات الحالية:**
+```bash
+git add .
+```
-# عرض الاختلافات بين الفروع
-git diff <فرع1> <فرع2>
+**إضافة ملفات محددة:**
+```bash
+git add
```
----
+**إضافة أجزاء من ملف بشكل تفاعلي:**
+```bash
+git add -p
+```
-## 📝 إدارة الملفات
+### إيداع التغييرات
-### إضافة وحذف الملفات:
+**إيداع جميع تغييرات الملفات المتتبعة:**
+```bash
+git commit -a
+```
+**إيداع التغييرات المحضّرة:**
```bash
-# إضافة ملف محدد لمنطقة التحضير
-git add <ملف>
+git commit
+```
-# إضافة جميع الملفات المعدلة
-git add .
+**إيداع مع رسالة:**
+```bash
+git commit -m 'message here'
+```
-# إضافة جميع الملفات من نوع محدد
-git add *.txt
+**تخطي التحضير والإيداع مع رسالة:**
+```bash
+git commit -am 'message here'
+```
-# إضافة تفاعلية
-git add -i
+**إيداع بتاريخ محدد:**
+```bash
+git commit --date="`date --date='n day ago'`" -am ""
+```
-# حذف ملف من المستودع ومجلد العمل
-git rm <ملف>
+### تعديل آخر إيداع
-# حذف ملف من المستودع فقط (الاحتفاظ به في المجلد)
-git rm --cached <ملف>
+> ⚠️ **تحذير:** لا تعدّل الإيداعات المنشورة!
-# نقل/إعادة تسمية ملف
-git mv <ملف-المصدر> <ملف-الوجهة>
+**تعديل آخر إيداع:**
+```bash
+git commit -a --amend
```
----
+**تعديل بدون تغيير رسالة الإيداع:**
+```bash
+git commit --amend --no-edit
+```
-## 💾 التثبيتات (Commits)
+**تغيير تاريخ المودع:**
+```bash
+GIT_COMMITTER_DATE="date" git commit --amend
+```
+
+**تغيير تاريخ المؤلف:**
+```bash
+git commit --amend --date="date"
+```
-### حفظ التغييرات في المستودع:
+### تخزين التغييرات مؤقتاً
+**حفظ التغييرات الحالية مؤقتاً:**
```bash
-# تثبيت مع رسالة
-git commit -m "رسالة التثبيت"
+git stash
+```
-# تثبيت مع إضافة جميع الملفات المعدلة
-git commit -am "رسالة التثبيت"
+**تطبيق آخر تغييرات مخزنة:**
+```bash
+git stash apply
+```
-# تعديل التثبيت الأخير
-git commit --amend
+**تطبيق تخزين محدد:**
+```bash
+git stash apply stash@{stash_number}
+```
+> استخدم `git stash list` لعرض التخزينات المتاحة
-# تثبيت فارغ (مفيد لـ CI/CD)
-git commit --allow-empty -m "تشغيل CI"
+**حذف آخر تخزين:**
+```bash
+git stash drop
+```
-# تثبيت مع رسالة مفصلة (يفتح المحرر)
-git commit
+**نقل التغييرات غير المودعة إلى فرع آخر:**
+```bash
+git stash
+git checkout branch2
+git stash pop
```
---
-## 🌿 الفروع (Branches)
+## 🔍 البحث
-### العمل مع الفروع:
+### البحث في النصوص
+**البحث عن نص في جميع الملفات:**
```bash
-# عرض جميع الفروع
-git branch
-
-# عرض الفروع البعيدة
-git branch -r
+git grep "Hello"
+```
-# عرض جميع الفروع (محلية وبعيدة)
-git branch -a
+**البحث في إصدار محدد:**
+```bash
+git grep "Hello" v2.5
+```
-# إنشاء فرع جديد
-git branch <اسم-الفرع>
+### البحث في الإيداعات
-# التبديل إلى فرع
-git checkout <اسم-الفرع>
+**البحث عن إيداعات أضافت كلمة مفتاحية محددة:**
+```bash
+git log -S 'keyword'
+```
-# إنشاء والتبديل إلى فرع جديد
-git checkout -b <اسم-الفرع>
+**البحث بتعبير نمطي:**
+```bash
+git log -S 'keyword' --pickaxe-regex
+```
-# إنشاء فرع من تثبيت محدد
-git checkout -b <اسم-الفرع> <هاش-التثبيت>
+---
-# حذف فرع
-git branch -d <اسم-الفرع>
+## 📖 سجل الإيداعات
-# حذف فرع بالقوة
-git branch -D <اسم-الفرع>
+### السجل الأساسي
-# إعادة تسمية الفرع الحالي
-git branch -m <الاسم-الجديد>
+**عرض جميع الإيداعات (مفصل):**
+```bash
+git log
+```
-# إعادة تسمية فرع محدد
-git branch -m <الاسم-القديم> <الاسم-الجديد>
+**عرض الإيداعات (سطر واحد لكل إيداع):**
+```bash
+git log --oneline
```
----
+**عرض إيداعات مؤلف محدد:**
+```bash
+git log --author="username"
+```
-## 🔀 الدمج (Merge)
+**عرض التغييرات لملف محدد:**
+```bash
+git log -p
+```
-### دمج التغييرات بين الفروع:
+### السجل المتقدم
+**مقارنة الفروع:**
```bash
-# دمج فرع في الفرع الحالي
-git merge <اسم-الفرع>
+git log --oneline .. --left-right
+```
-# دمج بدون fast-forward (إنشاء تثبيت دمج)
-git merge --no-ff <اسم-الفرع>
+**عرض من غيّر ماذا ومتى:**
+```bash
+git blame
+```
-# دمج فقط إذا كان fast-forward
-git merge --ff-only <اسم-الفرع>
+### سجلات المراجع
-# إلغاء عملية الدمج الجارية
-git merge --abort
+**عرض سجل المراجع:**
+```bash
+git reflog show
+```
-# متابعة الدمج بعد حل التعارضات
-git merge --continue
+**حذف سجل المراجع:**
+```bash
+git reflog delete
```
---
-## 🌐 المستودعات البعيدة
-
-### إدارة المستودعات البعيدة:
+## 📁 النقل / إعادة التسمية
+**إعادة تسمية ملف:**
```bash
-# عرض المستودعات البعيدة
-git remote
-
-# عرض المستودعات البعيدة مع الروابط
-git remote -v
+git mv Index.txt Index.html
+```
-# إضافة مستودع بعيد
-git remote add <اسم> <رابط>
+---
-# تغيير رابط المستودع البعيد
-git remote set-url <اسم> <رابط-جديد>
+## 🌿 الفروع والعلامات
-# حذف مستودع بعيد
-git remote remove <اسم>
+### عرض الفروع
-# رفع التغييرات للمستودع البعيد
-git push <بعيد> <فرع>
+**عرض الفروع المحلية:**
+```bash
+git branch
+```
-# رفع فرع وتعيين التتبع
-git push -u <بعيد> <فرع>
+**عرض جميع الفروع (محلية + بعيدة):**
+```bash
+git branch -a
+```
-# رفع جميع الفروع
-git push --all
+**عرض الفروع البعيدة:**
+```bash
+git branch -r
+```
-# رفع العلامات
-git push --tags
+**عرض الفروع المدمجة:**
+```bash
+git branch --merged
+```
-# تحميل التغييرات من المستودع البعيد
-git pull <بعيد> <فرع>
+### التبديل وإنشاء الفروع
-# تحميل التغييرات بدون دمج
-git fetch <بعيد>
+**التبديل إلى فرع موجود:**
+```bash
+git checkout
+```
-# تحميل جميع الفروع البعيدة
-git fetch --all
+**إنشاء والتبديل إلى فرع جديد:**
+```bash
+git checkout -b
```
----
+**التبديل إلى الفرع السابق:**
+```bash
+git checkout -
+```
-## 📚 السجل والتاريخ
+**إنشاء فرع من فرع موجود:**
+```bash
+git checkout -b
+```
-### استكشاف تاريخ التثبيتات:
+**إنشاء فرع من إيداع محدد:**
+```bash
+git checkout -b
+```
+**إنشاء فرع بدون التبديل إليه:**
```bash
-# عرض تاريخ التثبيتات
-git log
+git branch
+```
-# عرض التاريخ في سطر واحد لكل تثبيت
-git log --oneline
+**إنشاء فرع تتبع:**
+```bash
+git branch --track
+```
-# عرض التاريخ مع رسم بياني
-git log --graph
+### عمليات الفروع
-# عرض تاريخ ملف محدد
-git log <ملف>
+**استخراج ملف واحد من فرع آخر:**
+```bash
+git checkout --
+```
-# عرض إحصائيات التثبيتات
-git log --stat
+**تطبيق إيداع محدد من فرع آخر:**
+```bash
+git cherry-pick
+```
-# عرض التغييرات في كل تثبيت
-git log -p
+**إعادة تسمية الفرع الحالي:**
+```bash
+git branch -m
+```
-# عرض آخر N تثبيت
-git log -n <عدد>
+**حذف فرع محلي:**
+```bash
+git branch -d
+```
-# عرض التثبيتات بين تواريخ
-git log --since="2023-01-01" --until="2023-12-31"
+**حذف فرع محلي بالقوة:**
+```bash
+git branch -D
+```
+> ⚠️ **تحذير:** ستفقد التغييرات غير المدمجة!
-# عرض التثبيتات حسب المؤلف
-git log --author="اسم المؤلف"
+### العلامات
-# البحث في رسائل التثبيت
-git log --grep="كلمة مفتاحية"
+**إنشاء علامة عند HEAD:**
+```bash
+git tag
```
----
-
-## 🔍 البحث
+**إنشاء علامة مشروحة:**
+```bash
+git tag -a
+```
-### البحث في الملفات والتثبيتات:
+**إنشاء علامة مع رسالة:**
+```bash
+git tag -am 'message here'
+```
+**عرض جميع العلامات:**
```bash
-# البحث عن نص في الملفات
-git grep "النص المطلوب"
+git tag
+```
-# البحث في أنواع ملفات محددة
-git grep "النمط" -- "*.js"
+**عرض العلامات مع الرسائل:**
+```bash
+git tag -n
+```
-# البحث في رسائل التثبيت
-git log --grep="الرسالة"
+---
-# البحث في تغييرات التثبيتات
-git log -S "نص الكود"
+## 🔄 التحديث والنشر
-# البحث عن أسماء الملفات
-git ls-files | grep "النمط"
+### إدارة المستودعات البعيدة
-# البحث عن ملفات في الفرع
-git ls-tree -r --name-only <اسم-الفرع>
+**عرض المستودعات البعيدة المُعدّة:**
+```bash
+git remote -v
```
----
-
-## 📋 النقل/إعادة التسمية
+**عرض معلومات المستودع البعيد:**
+```bash
+git remote show
+```
-### نقل وإعادة تسمية الملفات:
+**إضافة مستودع بعيد جديد:**
+```bash
+git remote add
+```
+**إعادة تسمية مستودع بعيد:**
```bash
-# نقل/إعادة تسمية ملف
-git mv <الاسم-القديم> <الاسم-الجديد>
+git remote rename
+```
-# نقل مجلد
-git mv <المجلد-القديم> <المجلد-الجديد>
+**حذف مستودع بعيد:**
+```bash
+git remote rm
+```
+> ℹ️ **ملاحظة:** هذا يحذف المرجع البعيد محلياً فقط، وليس المستودع البعيد نفسه.
-# بعد نقل الملف يدوياً
-mv <الاسم-القديم> <الاسم-الجديد>
-git rm <الاسم-القديم>
-git add <الاسم-الجديد>
+### الجلب والسحب
-# نقل ملفات متعددة
-git mv *.txt <المجلد-الجديد>/
+**تنزيل التغييرات بدون دمج:**
+```bash
+git fetch
+```
-# تتبع تاريخ مسار الملف
-git log --follow <اسم-الملف>
+**تنزيل ودمج التغييرات:**
+```bash
+git pull
```
----
+**الحصول على التغييرات من الفرع الرئيسي:**
+```bash
+git pull origin master
+```
-## 🏷️ العلامات (Tags)
+**السحب مع إعادة التأسيس:**
+```bash
+git pull --rebase
+```
-### إدارة علامات الإصدارات:
+### الدفع والنشر
+**نشر التغييرات المحلية:**
```bash
-# عرض جميع العلامات
-git tag
+git push
+```
-# إنشاء علامة خفيفة
-git tag <اسم-العلامة>
+**حذف فرع بعيد:**
+```bash
+# Git v1.7.0+
+git push --delete
-# إنشاء علامة مشروحة
-git tag -a <اسم-العلامة> -m "رسالة العلامة"
+# Git v1.5.0+
+git push :
+```
-# إنشاء علامة على تثبيت محدد
-git tag -a <اسم-العلامة> <هاش-التثبيت>
+**نشر العلامات:**
+```bash
+git push --tags
+```
-# عرض معلومات علامة
-git show <اسم-العلامة>
+---
-# حذف علامة محلية
-git tag -d <اسم-العلامة>
+## 🔀 الدمج وإعادة التأسيس
-# حذف علامة بعيدة
-git push --delete <بعيد> <اسم-العلامة>
+### عمليات الدمج
-# رفع علامة محددة
-git push <بعيد> <اسم-العلامة>
+**دمج فرع في HEAD الحالي:**
+```bash
+git merge
+```
-# رفع جميع العلامات
-git push <بعيد> --tags
+**إعداد أداة الدمج عامة:**
+```bash
+git config --global merge.tool meld
```
----
+**استخدام أداة الدمج المُعدّة:**
+```bash
+git mergetool
+```
-## ↩️ التراجع عن التغييرات
+### عمليات إعادة التأسيس
-### التراجع عن التعديلات:
+> ⚠️ **تحذير:** لا تعد تأسيس الإيداعات المنشورة!
+**إعادة تأسيس HEAD الحالي على فرع:**
```bash
-# إلغاء التغييرات في ملف محدد
-git checkout <ملف>
-
-# إلغاء جميع التغييرات غير المثبتة
-git checkout .
+git rebase
+```
-# إرجاع ملف لإصدار محدد
-git checkout <هاش-التثبيت> <ملف>
+**إلغاء إعادة التأسيس:**
+```bash
+git rebase --abort
+```
-# إزالة ملف من منطقة التحضير
-git reset <ملف>
+**متابعة إعادة التأسيس بعد حل التعارضات:**
+```bash
+git rebase --continue
+```
-# إزالة جميع الملفات من منطقة التحضير
-git reset
+### حل التعارضات
-# التراجع للتثبيت السابق (الاحتفاظ بالتغييرات)
-git reset --soft HEAD~1
+**وضع علامة على ملف كمحلول:**
+```bash
+git add
+```
-# التراجع للتثبيت السابق (إلغاء التغييرات)
-git reset --hard HEAD~1
+**حذف ملف محلول:**
+```bash
+git rm
+```
-# التراجع لتثبيت محدد
-git reset --hard <هاش-التثبيت>
+### ضغط الإيداعات
-# إنشاء تثبيت يلغي تثبيت آخر
-git revert <هاش-التثبيت>
+**إعادة تأسيس تفاعلية لضغط الإيداعات:**
+```bash
+git rebase -i
+```
-# إلغاء تثبيتات متعددة
-git revert <هاش-من>..<هاش-إلى>
+**مثال على إعداد الضغط:**
+```
+# قبل
+pick
+pick
+pick
+
+# بعد (ضغط commit_id2 و commit_id3 في commit_id)
+pick
+squash
+squash
```
---
-## 📦 المخزن المؤقت (Stash)
+## ↩️ التراجع
-### حفظ العمل مؤقتاً:
+### تجاهل التغييرات
+**تجاهل جميع التغييرات المحلية:**
```bash
-# حفظ التغييرات الحالية في المخزن المؤقت
-git stash
+git reset --hard HEAD
+```
-# حفظ مع رسالة وصفية
-git stash save "رسالة وصفية"
+**إلغاء تحضير جميع الملفات:**
+```bash
+git reset HEAD
+```
-# عرض جميع المخازن المؤقتة
-git stash list
+**تجاهل التغييرات في ملف محدد:**
+```bash
+git checkout HEAD
+```
-# تطبيق آخر مخزن مؤقت
-git stash apply
+### عمليات إعادة التعيين
-# تطبيق مخزن مؤقت محدد
-git stash apply stash@{0}
+**إعادة التعيين إلى إيداع سابق (تجاهل جميع التغييرات):**
+```bash
+git reset --hard
+```
-# تطبيق وحذف آخر مخزن مؤقت
-git stash pop
+**إعادة التعيين إلى حالة الفرع البعيد:**
+```bash
+git reset --hard
+# مثال: git reset --hard upstream/master
+```
-# حذف مخزن مؤقت محدد
-git stash drop stash@{0}
+**إعادة التعيين مع الاحتفاظ بالتغييرات كغير محضّرة:**
+```bash
+git reset
+```
-# حذف جميع المخازن المؤقتة
-git stash clear
+**إعادة التعيين مع الاحتفاظ بالتغييرات المحلية غير المودعة:**
+```bash
+git reset --keep
+```
+
+### التراجع عن الإيداعات
+
+**التراجع عن إيداع (إنشاء إيداع جديد بتغييرات معاكسة):**
+```bash
+git revert
+```
-# عرض التغييرات في مخزن مؤقت
-git stash show stash@{0}
+### تنظيف الملفات المتجاهلة
-# إنشاء فرع من مخزن مؤقت
-git stash branch <اسم-الفرع> stash@{0}
+**حذف الملفات التي أُودعت بالخطأ والتي يجب تجاهلها:**
+```bash
+git rm -r --cached .
+git add .
+git commit -m "remove ignored files"
```
---
## 🌊 Git Flow
-Git Flow هو نموذج تفريع يحدد سير عمل صارم مصمم حول إطلاق المشروع.
+**Git-flow المحسّن:** [git-flow-avh](https://github.com/petervanderdoes/gitflow-avh)
-### الفروع الرئيسية:
-- **master/main**: كود الإنتاج
-- **develop**: فرع التطوير الرئيسي
+### 📋 جدول المحتويات
+- [🔧 الإعداد](#setup-1)
+- [🚀 البدء](#getting-started)
+- [✨ الميزات](#features)
+- [🎁 إنشاء إصدار](#make-a-release)
+- [🔥 الإصلاحات العاجلة](#hotfixes)
+- [📊 نظرة عامة على الأوامر](#commands-overview)
-### فروع الدعم:
-- **feature**: للميزات الجديدة
-- **release**: لتحضير إصدارات جديدة
-- **hotfix**: للإصلاحات العاجلة في الإنتاج
+---
-### أوامر Git Flow:
+### 🔧 الإعداد {#setup-1}
+> **متطلب أساسي:** يجب أن يكون Git مثبتاً ويعمل. Git-flow يعمل على macOS و Linux و Windows.
+
+**macOS (Homebrew):**
```bash
-# تهيئة git flow
-git flow init
+brew install git-flow-avh
+```
-# بدء ميزة جديدة
-git flow feature start <اسم-الميزة>
+**macOS (MacPorts):**
+```bash
+port install git-flow
+```
-# إنهاء الميزة
-git flow feature finish <اسم-الميزة>
+**Linux (توزيعات Debian):**
+```bash
+sudo apt-get install git-flow
+```
-# نشر الميزة
-git flow feature publish <اسم-الميزة>
+**Windows (Cygwin):**
+> يتطلب wget و util-linux
+```bash
+wget -q -O - --no-check-certificate https://raw.githubusercontent.com/petervanderdoes/gitflow/develop/contrib/gitflow-installer.sh install | bash
+```
-# بدء إصدار
-git flow release start <إصدار>
+---
-# إنهاء الإصدار
-git flow release finish <إصدار>
+### 🚀 البدء
-# بدء إصلاح عاجل
-git flow hotfix start <إصدار>
+يحتاج Git-flow إلى التهيئة لتخصيص إعدادات مشروعك.
-# إنهاء الإصلاح العاجل
-git flow hotfix finish <إصدار>
+**التهيئة (تفاعلية):**
+```bash
+git flow init
```
+> ستجيب على أسئلة حول اتفاقيات تسمية الفروع. يُنصح باستخدام القيم الافتراضية.
-### سير العمل بدون Git Flow:
+**التهيئة (استخدام الافتراضيات):**
+```bash
+git flow init -d
+```
-
+---
+### ✨ الميزات
+
+الميزات مخصصة لتطوير وظائف جديدة للإصدارات القادمة. عادةً ما توجد فقط في مستودعات المطورين.
+
+**بدء ميزة جديدة:**
```bash
-# إنشاء فرع الميزة
-git checkout develop
-git checkout -b feature/ميزة-جديدة
+git flow feature start MYFEATURE
+```
+> ينشئ فرع ميزة بناءً على 'develop' وينتقل إليه
-# العمل على الميزة
-git add .
-git commit -m "إضافة ميزة جديدة"
+**إنهاء ميزة:**
+```bash
+git flow feature finish MYFEATURE
+```
+> سيقوم بـ:
+> 1. دمج MYFEATURE في 'develop'
+> 2. حذف فرع الميزة
+> 3. العودة إلى 'develop'
-# دمج الميزة في develop
-git checkout develop
-git merge --no-ff feature/ميزة-جديدة
-git branch -d feature/ميزة-جديدة
+**نشر ميزة (للتعاون):**
+```bash
+git flow feature publish MYFEATURE
+```
-# إنشاء فرع الإصدار
-git checkout develop
-git checkout -b release/1.0.0
+**الحصول على ميزة منشورة:**
+```bash
+git flow feature pull origin MYFEATURE
+```
-# إنهاء الإصدار
-git checkout master
-git merge --no-ff release/1.0.0
-git tag -a 1.0.0 -m "الإصدار 1.0.0"
-git checkout develop
-git merge --no-ff release/1.0.0
-git branch -d release/1.0.0
+**تتبع ميزة من المصدر:**
+```bash
+git flow feature track MYFEATURE
```
---
-## 💡 نصائح مفيدة
+### 🎁 إنشاء إصدار
-### اختصارات مفيدة:
+الإصدارات تدعم تحضير إصدارات الإنتاج الجديدة، وتسمح بإصلاحات الأخطاء الطفيفة وتحضير البيانات الوصفية.
+**بدء إصدار:**
```bash
-# إعداد اختصارات مفيدة
-git config --global alias.st status
-git config --global alias.co checkout
-git config --global alias.br branch
-git config --global alias.ci commit
-git config --global alias.unstage 'reset HEAD --'
-git config --global alias.last 'log -1 HEAD'
-git config --global alias.visual '!gitk'
+git flow release start RELEASE [BASE]
```
+> ينشئ فرع إصدار من 'develop'. اختيارياً حدد [BASE] وهو SHA-1 للإيداع.
-### ملفات .gitignore:
+**نشر الإصدار:**
+```bash
+git flow release publish RELEASE
+```
+**تتبع إصدار بعيد:**
```bash
-# إنشاء ملف .gitignore
-echo "node_modules/" >> .gitignore
-echo "*.log" >> .gitignore
-echo ".env" >> .gitignore
+git flow release track RELEASE
+```
-# تجاهل ملفات متتبعة بالفعل
-git rm --cached <ملف>
-echo "<ملف>" >> .gitignore
-git add .gitignore
-git commit -m "إضافة ملف إلى .gitignore"
+**إنهاء الإصدار:**
+```bash
+git flow release finish RELEASE
```
+> سيقوم بـ:
+> 1. دمج فرع الإصدار في 'master'
+> 2. وضع علامة على الإصدار
+> 3. إعادة دمج الإصدار في 'develop'
+> 4. حذف فرع الإصدار
+
+> 💡 **لا تنسَ:** ادفع العلامات باستخدام `git push --tags`
---
-## 🌍 لغات أخرى
+### 🔥 الإصلاحات العاجلة
-هذا الدليل المرجعي لـ Git متوفر باللغات التالية:
-
-- 🇺🇸 [English](../README.md)
-- 🇸🇦 **العربية** (الحالي)
-- 🇧🇩 [বাংলা](git-cheat-sheet-bn.md)
-- 🇩🇪 [Deutsch](git-cheat-sheet-de.md)
-- 🇬🇷 [Ελληνικά](git-cheat-sheet-el.md)
-- 🇪🇸 [Español](git-cheat-sheet-es.md)
-- 🇮🇳 [हिन्दी](git-cheat-sheet-hi.md)
-- 🇰🇷 [한국어](git-cheat-sheet-ko.md)
-- 🇵🇱 [Polski](git-cheat-sheet-pl.md)
-- 🇧🇷 [Português](git-cheat-sheet-pt_BR.md)
-- 🇹🇷 [Türkçe](git-cheat-sheet-tr.md)
-- 🇨🇳 [中文](git-cheat-sheet-zh.md)
+الإصلاحات العاجلة تعالج المشاكل الحرجة في إصدارات الإنتاج الحية. تتفرع من العلامة المقابلة على master.
+
+**بدء إصلاح عاجل:**
+```bash
+git flow hotfix start VERSION [BASENAME]
+```
+
+**إنهاء إصلاح عاجل:**
+```bash
+git flow hotfix finish VERSION
+```
+> يُدمج مرة أخرى في كل من 'develop' و 'master'، ويضع علامة على دمج master
---
-## 🤝 المساهمة
+### 📊 نظرة عامة على الأوامر
-نرحب بالمساهمات! للمساعدة في تحسين هذا المشروع:
+
+
+
-1. **أبلغ عن المشاكل**: شارك الأخطاء أو اقتراحات التحسين
-2. **أضف لغات جديدة**: أنشئ ترجمات أو حسّن الموجودة
-3. **حسّن المحتوى**: أضف أوامر جديدة أو أمثلة أو شروحات
-4. **قدم ملاحظات**: شارك تجاربك واقتراحاتك
+### 🌊 مخطط Git Flow
-### كيفية المساهمة:
-- [افتح مشكلة على GitHub](https://github.com/arslanbilal/git-cheat-sheet/issues)
-- أرسل طلب سحب (Pull Request)
-- اقترح تحسينات على الوثائق
+
+
+
---
-## 📄 الترخيص
-هذا المشروع مرخص تحت رخصة MIT. راجع ملف [LICENSE](../LICENSE) لمزيد من التفاصيل.
+## 🌍 لغات أخرى
+
+هذا الدليل المرجعي متوفر بعدة لغات:
+
+| اللغة | الرابط |
+|-------|--------|
+| 🇸🇦 العربية | **الحالي** |
+| 🇧🇩 البنغالية | [git-cheat-sheet-bn.md](git-cheat-sheet-bn.md) |
+| 🇧🇷 البرتغالية البرازيلية | [git-cheat-sheet-pt_BR.md](git-cheat-sheet-pt_BR.md) |
+| 🇨🇳 الصينية | [git-cheat-sheet-zh.md](git-cheat-sheet-zh.md) |
+| 🇩🇪 الألمانية | [git-cheat-sheet-de.md](git-cheat-sheet-de.md) |
+| 🇬🇷 اليونانية | [git-cheat-sheet-el.md](git-cheat-sheet-el.md) |
+| 🇮🇳 الهندية | [git-cheat-sheet-hi.md](git-cheat-sheet-hi.md) |
+| 🇰🇷 الكورية | [git-cheat-sheet-ko.md](git-cheat-sheet-ko.md) |
+| 🇵🇱 البولندية | [git-cheat-sheet-pl.md](git-cheat-sheet-pl.md) |
+| 🇪🇸 الإسبانية | [git-cheat-sheet-es.md](git-cheat-sheet-es.md) |
+| 🇹🇷 التركية | [git-cheat-sheet-tr.md](git-cheat-sheet-tr.md) |
+| 🇺🇸 الإنجليزية | [README.md](../README.md) |
---
-## 📖 مصادر إضافية
+## 🤝 المساهمة
+
+نرحب بالمساهمات! يمكنك:
+
+- 🐛 الإبلاغ عن الأخطاء
+- ✨ إضافة أوامر Git جديدة
+- 🌍 الترجمة إلى لغات جديدة
+- 💡 تحسين الشروحات
+- 📝 تحسين التنسيق
+
+**كيفية المساهمة:**
+1. انسخ (Fork) هذا المستودع
+2. أنشئ فرع الميزة (`git checkout -b feature/AmazingFeature`)
+3. أودع تغييراتك (`git commit -m 'Add some AmazingFeature'`)
+4. ادفع إلى الفرع (`git push origin feature/AmazingFeature`)
+5. افتح طلب سحب (Pull Request)
+
+---
+
+## 📄 الترخيص
-- [الوثائق الرسمية لـ Git](https://git-scm.com/doc)
-- [دروس Git من Atlassian](https://www.atlassian.com/git/tutorials)
-- [ورقة مرجعية لـ Git من GitHub](https://education.github.com/git-cheat-sheet-education.pdf)
-- [دروس Git التفاعلية](https://learngitbranching.js.org/)
+هذا المشروع مفتوح المصدر ومتاح تحت [رخصة MIT](../LICENSE).
---
-
- ⭐ إذا كان هذا الدليل مفيداً، امنحه نجمة!
- برمجة سعيدة مع Git! 🚀
-
+
+ ⭐ امنح هذا المستودع نجمة إذا وجدته مفيداً!
+
diff --git a/other-sheets/git-cheat-sheet-bn.md b/other-sheets/git-cheat-sheet-bn.md
index 288dd85..bb85cb0 100644
--- a/other-sheets/git-cheat-sheet-bn.md
+++ b/other-sheets/git-cheat-sheet-bn.md
@@ -1,677 +1,866 @@
-# Git Cheat Sheet বাংলা
+# Git এবং Git Flow চিট শিট
+[](https://github.com/sindresorhus/awesome)
-
-
-সবচেয়ে বেশি ব্যবহৃত Git কমান্ডগুলির একটি দ্রুত রেফারেন্স গাইড, সহজ ব্যবহারের জন্য বিভাগ অনুযায়ী সংগঠিত।
+
+
+
---
-## 📖 এই গাইড সম্পর্কে
+## 📖 সম্পর্কে
-এই Git রেফারেন্স গাইডটি একটি সম্পূর্ণ রেফারেন্স যা Git এর সাথে কাজের প্রবাহ উন্নত করতে চান এমন সবার জন্য। যারা Git এর সাথে তাদের যাত্রা শুরু করছেন এমন শিক্ষানবিস থেকে শুরু করে অভিজ্ঞ ডেভেলপারদের জন্য, এই গাইডটি আপনার ডেভেলপমেন্ট যাত্রাকে ত্বরান্বিত করতে সংগঠিত এবং শ্রেণীবদ্ধ কমান্ড প্রদান করে।
+এই বিস্তৃত Git চিট শিটটি আপনাকে সবকিছু মুখস্ত না করেই Git কমান্ডগুলো আয়ত্ত করতে সাহায্য করবে। আপনি শিক্ষানবিস হোন বা অভিজ্ঞ ডেভেলপার, এই গাইডটি প্রয়োজনীয় Git অপারেশনগুলোর দ্রুত রেফারেন্স প্রদান করে।
-### মূল বৈশিষ্ট্য:
-- **সংগঠিত বিভাগ**: কমান্ডগুলি স্পষ্ট এবং যৌক্তিক গ্রুপে সাজানো
-- **ব্যবহারিক উদাহরণ**: বাস্তব বিশ্বের ব্যবহারের ক্ষেত্রে সহ
-- **শিক্ষানবিস-বান্ধব**: স্পষ্ট ব্যাখ্যা এবং টিপস সহ
-- **দ্রুত রেফারেন্স**: প্রয়োজনীয় কমান্ডগুলিতে দ্রুত অ্যাক্সেস
+**অবদান স্বাগত!** আপনি যা করতে পারেন:
+- ব্যাকরণ ত্রুটি ঠিক করুন
+- নতুন কমান্ড যোগ করুন
+- আপনার ভাষায় অনুবাদ করুন
+- ব্যাখ্যা উন্নত করুন
---
-
-## 📑 সূচিপত্র
-
-- [🔧 প্রাথমিক সেটআপ](#প্রাথমিক-সেটআপ)
-- [⚙️ কনফিগারেশন ফাইল](#কনফিগারেশন-ফাইল)
-- [📁 রিপোজিটরি সেটআপ](#রিপোজিটরি-সেটআপ)
-- [📊 স্ট্যাটাস কমান্ড](#স্ট্যাটাস-কমান্ড)
-- [📝 ফাইল ম্যানেজমেন্ট](#ফাইল-ম্যানেজমেন্ট)
-- [💾 কমিট](#কমিট)
-- [🌿 ব্রাঞ্চ](#ব্রাঞ্চ)
-- [🔀 মার্জ](#মার্জ)
-- [🌐 রিমোট রিপোজিটরি](#রিমোট-রিপোজিটরি)
-- [📚 হিস্ট্রি এবং লগ](#হিস্ট্রি-এবং-লগ)
-- [🔍 অনুসন্ধান](#অনুসন্ধান)
-- [📁 সরানো/নাম পরিবর্তন](#সরানো-নাম-পরিবর্তন)
-- [🏷️ ট্যাগ](#ট্যাগ)
-- [↩️ পরিবর্তন পূর্বাবস্থায় ফেরানো](#পরিবর্তন-পূর্বাবস্থায়-ফেরানো)
-- [📦 স্ট্যাশ](#স্ট্যাশ)
-- [🌊 Git Flow](#git-flow)
-- [💡 উপযোগী টিপস](#উপযোগী-টিপস)
-- [🌍 অন্যান্য ভাষা](#অন্যান্য-ভাষা)
-- [🤝 অবদান](#অবদান)
-- [📄 লাইসেন্স](#লাইসেন্স)
-- [📖 অতিরিক্ত সম্পদ](#অতিরিক্ত-সম্পদ)
+## 📋 সূচিপত্র
+
+- [🔧 সেটআপ](#-সেটআপ)
+- [⚙️ কনফিগারেশন ফাইল](#️-কনফিগারেশন-ফাইল)
+- [🆕 রিপোজিটরি তৈরি](#-রিপোজিটরি-তৈরি)
+- [📝 লোকাল পরিবর্তন](#-লোকাল-পরিবর্তন)
+- [🔍 অনুসন্ধান](#-অনুসন্ধান)
+- [📖 কমিট ইতিহাস](#-কমিট-ইতিহাস)
+- [📁 সরানো / নাম পরিবর্তন](#-সরানো--নাম-পরিবর্তন)
+- [🌿 ব্রাঞ্চ ও ট্যাগ](#-ব্রাঞ্চ-ও-ট্যাগ)
+- [🔄 আপডেট ও প্রকাশ](#-আপডেট-ও-প্রকাশ)
+- [🔀 মার্জ ও রিবেস](#-মার্জ-ও-রিবেস)
+- [↩️ পূর্বাবস্থায় ফেরানো](#️-পূর্বাবস্থায়-ফেরানো)
+- [🌊 Git Flow](#-git-flow)
+- [🌍 অন্যান্য ভাষা](#-অন্যান্য-ভাষা)
---
-## 🔧 প্রাথমিক সেটআপ
+## 🔧 সেটআপ
-আপনার ব্যক্তিগত তথ্য দিয়ে Git কনফিগার করুন:
+### কনফিগারেশন দেখুন
+**বর্তমান কনফিগারেশন দেখুন:**
```bash
-# ব্যবহারকারীর নাম সেট করুন
-git config --global user.name "আপনার নাম"
-
-# ইমেইল সেট করুন
-git config --global user.email "email@example.com"
-
-# বর্তমান কনফিগারেশন দেখুন
git config --list
-
-# ডিফল্ট এডিটর সেট করুন
-git config --global core.editor "nano"
-
-# মার্জ টুল সেট করুন
-git config --global merge.tool vimdiff
```
----
+**রিপোজিটরি কনফিগারেশন দেখুন:**
+```bash
+git config --local --list
+```
-## ⚙️ কনফিগারেশন ফাইল
+**গ্লোবাল কনফিগারেশন দেখুন:**
+```bash
+git config --global --list
+```
-Git ব্যবহারকারী এবং রিপোজিটরি পছন্দ সংরক্ষণের জন্য কনফিগারেশন ফাইল ব্যবহার করে:
+**সিস্টেম কনফিগারেশন দেখুন:**
+```bash
+git config --system --list
+```
-### কনফিগারেশন স্তর:
+### ব্যবহারকারী কনফিগারেশন
+**ভার্সন ইতিহাসের জন্য আপনার নাম সেট করুন:**
```bash
-# সিস্টেম (সব ব্যবহারকারী)
-git config --system
-
-# ব্যবহারকারী (বর্তমান ব্যবহারকারী)
-git config --global
+git config --global user.name "[firstname lastname]"
+```
-# রিপোজিটরি (নির্দিষ্ট প্রকল্প)
-git config --local
+**আপনার ইমেইল ঠিকানা সেট করুন:**
+```bash
+git config --global user.email "[valid-email]"
```
-### সাধারণ কনফিগারেশন:
+### ডিসপ্লে ও এডিটর সেটিংস
+**স্বয়ংক্রিয় কমান্ড লাইন রঙ সক্রিয় করুন:**
```bash
-# ব্যবহারকারীর পরিচয়
-git config --global user.name "আপনার নাম"
-git config --global user.email "email@example.com"
+git config --global color.ui auto
+```
-# টেক্সট এডিটর
-git config --global core.editor nano
+**কমিটের জন্য গ্লোবাল এডিটর সেট করুন:**
+```bash
+git config --global core.editor vi
+```
-# মার্জ টুল
-git config --global merge.tool vimdiff
+---
-# আউটপুটে রঙ
-git config --global color.ui auto
+## ⚙️ কনফিগারেশন ফাইল
-# কনফিগারেশন দেখুন
-git config --list
-```
+| পরিসর | অবস্থান | কমান্ড ফ্ল্যাগ |
+|-------|----------|--------------|
+| **রিপোজিটরি** | `/.git/config` | `--local` |
+| **ব্যবহারকারী** | `~/.gitconfig` | `--global` |
+| **সিস্টেম** | `/etc/gitconfig` | `--system` |
---
-## 📁 রিপোজিটরি সেটআপ
+## 🆕 রিপোজিটরি তৈরি
-### নতুন রিপোজিটরি তৈরি করুন:
+### বিদ্যমান রিপোজিটরি ক্লোন করুন
+**SSH এর মাধ্যমে:**
```bash
-# নতুন Git রিপোজিটরি তৈরি করুন
-git init
+git clone ssh://user@domain.com/repo.git
+```
-# বিদ্যমান রিপোজিটরি ক্লোন করুন
-git clone <রিপোজিটরি-url>
+**HTTPS এর মাধ্যমে:**
+```bash
+git clone https://domain.com/user/repo.git
+```
-# নির্দিষ্ট ডিরেক্টরিতে ক্লোন করুন
-git clone <রিপোজিটরি-url> <ডিরেক্টরি-নাম>
+### নতুন রিপোজিটরি শুরু করুন
+
+**বর্তমান ডিরেক্টরিতে রিপোজিটরি তৈরি করুন:**
+```bash
+git init
+```
+
+**নির্দিষ্ট ডিরেক্টরিতে রিপোজিটরি তৈরি করুন:**
+```bash
+git init
```
---
-## 📊 স্ট্যাটাস কমান্ড
+## 📝 লোকাল পরিবর্তন
-### আপনার রিপোজিটরির অবস্থা পরীক্ষা করুন:
+### স্ট্যাটাস ও পার্থক্য পরীক্ষা করুন
+**ওয়ার্কিং ডিরেক্টরির স্ট্যাটাস দেখুন:**
```bash
-# রিপোজিটরির বর্তমান অবস্থা দেখুন
git status
+```
-# সংক্ষিপ্ত ফরম্যাটে অবস্থা দেখুন
-git status -s
+**ট্র্যাক করা ফাইলের পরিবর্তন দেখুন:**
+```bash
+git diff
+```
-# ট্র্যাক না করা ফাইল উপেক্ষা করে অবস্থা দেখুন
-git status --ignored
+**নির্দিষ্ট ফাইলের পরিবর্তন দেখুন:**
+```bash
+git diff
+```
-# পরিবর্তিত ফাইলের পার্থক্য দেখুন
-git diff
+### পরিবর্তন স্টেজিং
+
+**সব বর্তমান পরিবর্তন যোগ করুন:**
+```bash
+git add .
+```
-# স্টেজিং এরিয়ার পার্থক্য দেখুন
-git diff --staged
+**নির্দিষ্ট ফাইল যোগ করুন:**
+```bash
+git add
+```
-# ব্রাঞ্চের মধ্যে পার্থক্য দেখুন
-git diff <ব্রাঞ্চ১> <ব্রাঞ্চ২>
+**ইন্টারঅ্যাক্টিভভাবে ফাইলের অংশ যোগ করুন:**
+```bash
+git add -p
```
----
+### পরিবর্তন কমিট করুন
-## 📝 ফাইল ম্যানেজমেন্ট
+**সব ট্র্যাক করা ফাইলের পরিবর্তন কমিট করুন:**
+```bash
+git commit -a
+```
-### ফাইল যোগ এবং অপসারণ:
+**স্টেজ করা পরিবর্তন কমিট করুন:**
+```bash
+git commit
+```
+**বার্তা সহ কমিট করুন:**
```bash
-# নির্দিষ্ট ফাইল স্টেজিং এরিয়ায় যোগ করুন
-git add <ফাইল>
+git commit -m 'message here'
+```
-# সব পরিবর্তিত ফাইল যোগ করুন
-git add .
+**স্টেজিং এড়িয়ে বার্তা সহ কমিট করুন:**
+```bash
+git commit -am 'message here'
+```
-# নির্দিষ্ট ধরনের সব ফাইল যোগ করুন
-git add *.txt
+**নির্দিষ্ট তারিখে কমিট করুন:**
+```bash
+git commit --date="`date --date='n day ago'`" -am ""
+```
-# ইন্টারঅ্যাক্টিভভাবে যোগ করুন
-git add -i
+### শেষ কমিট সংশোধন করুন
-# রিপোজিটরি এবং ওয়ার্কিং ডিরেক্টরি থেকে ফাইল মুছুন
-git rm <ফাইল>
+> ⚠️ **সতর্কতা:** প্রকাশিত কমিট সংশোধন করবেন না!
-# শুধু রিপোজিটরি থেকে ফাইল মুছুন (ডিরেক্টরিতে রাখুন)
-git rm --cached <ফাইল>
+**শেষ কমিট সংশোধন করুন:**
+```bash
+git commit -a --amend
+```
-# ফাইল সরান/নাম পরিবর্তন করুন
-git mv <উৎস-ফাইল> <গন্তব্য-ফাইল>
+**কমিট বার্তা পরিবর্তন না করে সংশোধন করুন:**
+```bash
+git commit --amend --no-edit
```
----
+**কমিটারের তারিখ পরিবর্তন করুন:**
+```bash
+GIT_COMMITTER_DATE="date" git commit --amend
+```
-## 💾 কমিট
+**লেখকের তারিখ পরিবর্তন করুন:**
+```bash
+git commit --amend --date="date"
+```
-### রিপোজিটরিতে পরিবর্তন সংরক্ষণ করুন:
+### পরিবর্তন স্ট্যাশ করা
+**বর্তমান পরিবর্তন অস্থায়ীভাবে সংরক্ষণ করুন:**
```bash
-# বার্তা সহ কমিট করুন
-git commit -m "কমিট বার্তা"
+git stash
+```
-# সব পরিবর্তিত ফাইল যোগ করে কমিট করুন
-git commit -am "কমিট বার্তা"
+**শেষ স্ট্যাশ করা পরিবর্তন প্রয়োগ করুন:**
+```bash
+git stash apply
+```
-# শেষ কমিট সংশোধন করুন
-git commit --amend
+**নির্দিষ্ট স্ট্যাশ প্রয়োগ করুন:**
+```bash
+git stash apply stash@{stash_number}
+```
+> উপলব্ধ স্ট্যাশ দেখতে `git stash list` ব্যবহার করুন
-# খালি কমিট করুন (CI/CD ট্রিগারের জন্য উপযোগী)
-git commit --allow-empty -m "CI ট্রিগার"
+**শেষ স্ট্যাশ মুছুন:**
+```bash
+git stash drop
+```
-# বিস্তারিত বার্তা সহ কমিট করুন (এডিটর খুলবে)
-git commit
+**অকমিটেড পরিবর্তন অন্য ব্রাঞ্চে স্থানান্তর করুন:**
+```bash
+git stash
+git checkout branch2
+git stash pop
```
---
-## 🌿 ব্রাঞ্চ
+## 🔍 অনুসন্ধান
-### ব্রাঞ্চের সাথে কাজ করুন:
+### টেক্সট অনুসন্ধান
+**সব ফাইলে টেক্সট অনুসন্ধান করুন:**
```bash
-# সব ব্রাঞ্চ দেখুন
-git branch
+git grep "Hello"
+```
-# রিমোট ব্রাঞ্চ দেখুন
-git branch -r
+**নির্দিষ্ট ভার্সনে অনুসন্ধান করুন:**
+```bash
+git grep "Hello" v2.5
+```
-# সব ব্রাঞ্চ দেখুন (লোকাল এবং রিমোট)
-git branch -a
+### কমিট অনুসন্ধান
-# নতুন ব্রাঞ্চ তৈরি করুন
-git branch <ব্রাঞ্চ-নাম>
+**নির্দিষ্ট কীওয়ার্ড যোগ করা কমিট খুঁজুন:**
+```bash
+git log -S 'keyword'
+```
-# ব্রাঞ্চ পরিবর্তন করুন
-git checkout <ব্রাঞ্চ-নাম>
+**রেগুলার এক্সপ্রেশন দিয়ে অনুসন্ধান করুন:**
+```bash
+git log -S 'keyword' --pickaxe-regex
+```
-# নতুন ব্রাঞ্চ তৈরি করে সুইচ করুন
-git checkout -b <ব্রাঞ্চ-নাম>
+---
-# নির্দিষ্ট কমিট থেকে ব্রাঞ্চ তৈরি করুন
-git checkout -b <ব্রাঞ্চ-নাম> <কমিট-হ্যাশ>
+## 📖 কমিট ইতিহাস
-# ব্রাঞ্চ মুছুন
-git branch -d <ব্রাঞ্চ-নাম>
+### মৌলিক ইতিহাস
-# জোর করে ব্রাঞ্চ মুছুন
-git branch -D <ব্রাঞ্চ-নাম>
+**সব কমিট দেখুন (বিস্তারিত):**
+```bash
+git log
+```
-# বর্তমান ব্রাঞ্চের নাম পরিবর্তন করুন
-git branch -m <নতুন-নাম>
+**কমিট দেখুন (প্রতিটি এক লাইনে):**
+```bash
+git log --oneline
+```
-# নির্দিষ্ট ব্রাঞ্চের নাম পরিবর্তন করুন
-git branch -m <পুরানো-নাম> <নতুন-নাম>
+**নির্দিষ্ট লেখকের কমিট দেখুন:**
+```bash
+git log --author="username"
```
----
+**নির্দিষ্ট ফাইলের পরিবর্তন দেখুন:**
+```bash
+git log -p
+```
-## 🔀 মার্জ
+### উন্নত ইতিহাস
-### ব্রাঞ্চের মধ্যে পরিবর্তন মার্জ করুন:
+**ব্রাঞ্চ তুলনা করুন:**
+```bash
+git log --oneline .. --left-right
+```
+**কে কখন কী পরিবর্তন করেছে দেখুন:**
```bash
-# বর্তমান ব্রাঞ্চে অন্য ব্রাঞ্চ মার্জ করুন
-git merge <ব্রাঞ্চ-নাম>
+git blame
+```
-# ফাস্ট-ফরওয়ার্ড ছাড়া মার্জ করুন (মার্জ কমিট তৈরি করুন)
-git merge --no-ff <ব্রাঞ্চ-নাম>
+### রেফারেন্স লগ
-# শুধু ফাস্ট-ফরওয়ার্ড হলে মার্জ করুন
-git merge --ff-only <ব্রাঞ্চ-নাম>
+**রেফারেন্স লগ দেখুন:**
+```bash
+git reflog show
+```
-# চলমান মার্জ বাতিল করুন
-git merge --abort
+**রেফারেন্স লগ মুছুন:**
+```bash
+git reflog delete
+```
-# কনফ্লিক্ট সমাধানের পর মার্জ চালিয়ে যান
-git merge --continue
+---
+
+## 📁 সরানো / নাম পরিবর্তন
+
+**একটি ফাইলের নাম পরিবর্তন করুন:**
+```bash
+git mv Index.txt Index.html
```
---
-## 🌐 রিমোট রিপোজিটরি
+## 🌿 ব্রাঞ্চ ও ট্যাগ
-### রিমোট রিপোজিটরি পরিচালনা:
+### ব্রাঞ্চ তালিকা
+**লোকাল ব্রাঞ্চ তালিকা দেখুন:**
```bash
-# রিমোট রিপোজিটরি দেখুন
-git remote
-
-# URL সহ রিমোট রিপোজিটরি দেখুন
-git remote -v
+git branch
+```
-# রিমোট রিপোজিটরি যোগ করুন
-git remote add <নাম>
+**সব ব্রাঞ্চ তালিকা দেখুন (লোকাল + রিমোট):**
+```bash
+git branch -a
+```
-# রিমোট রিপোজিটরির URL পরিবর্তন করুন
-git remote set-url <নাম> <নতুন-url>
+**রিমোট ব্রাঞ্চ তালিকা দেখুন:**
+```bash
+git branch -r
+```
-# রিমোট রিপোজিটরি মুছুন
-git remote remove <নাম>
+**মার্জ হওয়া ব্রাঞ্চ তালিকা দেখুন:**
+```bash
+git branch --merged
+```
-# রিমোট রিপোজিটরিতে পরিবর্তন পুশ করুন
-git push <রিমোট> <ব্রাঞ্চ>
+### ব্রাঞ্চ পরিবর্তন ও তৈরি
-# ব্রাঞ্চ পুশ করে ট্র্যাকিং সেট করুন
-git push -u <রিমোট> <ব্রাঞ্চ>
+**বিদ্যমান ব্রাঞ্চে সুইচ করুন:**
+```bash
+git checkout
+```
-# সব ব্রাঞ্চ পুশ করুন
-git push --all
+**নতুন ব্রাঞ্চ তৈরি করে সুইচ করুন:**
+```bash
+git checkout -b
+```
-# ট্যাগ পুশ করুন
-git push --tags
+**আগের ব্রাঞ্চে সুইচ করুন:**
+```bash
+git checkout -
+```
-# রিমোট রিপোজিটরি থেকে পরিবর্তন ডাউনলোড করুন
-git pull <রিমোট> <ব্রাঞ্চ>
+**বিদ্যমান ব্রাঞ্চ থেকে ব্রাঞ্চ তৈরি করুন:**
+```bash
+git checkout -b
+```
-# মার্জ ছাড়া পরিবর্তন ডাউনলোড করুন
-git fetch <রিমোট>
+**নির্দিষ্ট কমিট থেকে ব্রাঞ্চ তৈরি করুন:**
+```bash
+git checkout -b
+```
-# সব রিমোট ব্রাঞ্চ ডাউনলোড করুন
-git fetch --all
+**সুইচ না করে ব্রাঞ্চ তৈরি করুন:**
+```bash
+git branch
```
----
+**ট্র্যাকিং ব্রাঞ্চ তৈরি করুন:**
+```bash
+git branch --track
+```
-## 📚 হিস্ট্রি এবং লগ
+### ব্রাঞ্চ অপারেশন
-### কমিট ইতিহাস অন্বেষণ করুন:
+**ভিন্ন ব্রাঞ্চ থেকে একটি ফাইল চেকআউট করুন:**
+```bash
+git checkout --
+```
+**অন্য ব্রাঞ্চ থেকে নির্দিষ্ট কমিট প্রয়োগ করুন:**
```bash
-# কমিট ইতিহাস দেখুন
-git log
+git cherry-pick
+```
-# প্রতি কমিটের জন্য এক লাইনে ইতিহাস দেখুন
-git log --oneline
+**বর্তমান ব্রাঞ্চের নাম পরিবর্তন করুন:**
+```bash
+git branch -m
+```
-# গ্রাফ সহ ইতিহাস দেখুন
-git log --graph
+**লোকাল ব্রাঞ্চ মুছুন:**
+```bash
+git branch -d
+```
-# নির্দিষ্ট ফাইলের ইতিহাস দেখুন
-git log <ফাইল>
+**জোর করে লোকাল ব্রাঞ্চ মুছুন:**
+```bash
+git branch -D
+```
+> ⚠️ **সতর্কতা:** আপনি মার্জ না হওয়া পরিবর্তন হারাবেন!
-# কমিট পরিসংখ্যান দেখুন
-git log --stat
+### ট্যাগ
-# প্রতি কমিটের পরিবর্তন দেখুন
-git log -p
+**HEAD-এ ট্যাগ তৈরি করুন:**
+```bash
+git tag
+```
-# শেষ N কমিট দেখুন
-git log -n <সংখ্যা>
+**টীকাযুক্ত ট্যাগ তৈরি করুন:**
+```bash
+git tag -a
+```
-# তারিখের মধ্যে কমিট দেখুন
-git log --since="2023-01-01" --until="2023-12-31"
+**বার্তা সহ ট্যাগ তৈরি করুন:**
+```bash
+git tag -am 'message here'
+```
-# লেখক অনুযায়ী কমিট দেখুন
-git log --author="লেখকের নাম"
+**সব ট্যাগ তালিকা দেখুন:**
+```bash
+git tag
+```
-# কমিট বার্তায় অনুসন্ধান করুন
-git log --grep="কীওয়ার্ড"
+**বার্তা সহ ট্যাগ তালিকা দেখুন:**
+```bash
+git tag -n
```
---
-## 🔍 অনুসন্ধান
+## 🔄 আপডেট ও প্রকাশ
-### ইতিহাস এবং বিষয়বস্তুতে অনুসন্ধান:
+### রিমোট ব্যবস্থাপনা
+**কনফিগার করা রিমোট তালিকা দেখুন:**
```bash
-# কমিট বার্তায় অনুসন্ধান করুন
-git log --grep="কীওয়ার্ড"
+git remote -v
+```
-# কোডের পরিবর্তনে অনুসন্ধান করুন
-git log -S "কোডের অংশ"
+**রিমোটের তথ্য দেখুন:**
+```bash
+git remote show
+```
-# কাজের ফাইলে অনুসন্ধান করুন
-git grep "প্যাটার্ন"
+**নতুন রিমোট যোগ করুন:**
+```bash
+git remote add
+```
-# নির্দিষ্ট কমিটে অনুসন্ধান করুন
-git grep "প্যাটার্ন" <কমিট-হ্যাশ>
+**রিমোটের নাম পরিবর্তন করুন:**
+```bash
+git remote rename
+```
-# বড়/ছোট হাতের অক্ষর উপেক্ষা করে অনুসন্ধান
-git grep -i "প্যাটার্ন"
+**রিমোট মুছুন:**
+```bash
+git remote rm
+```
+> ℹ️ **নোট:** এটি শুধুমাত্র লোকালভাবে রিমোট রেফারেন্স মুছে দেয়, রিমোট রিপোজিটরি নিজে নয়।
-# পূর্ণ শব্দ অনুসন্ধান
-git grep -w "শব্দ"
+### ফেচ ও পুল
-# লাইন নম্বর দেখান
-git grep -n "প্যাটার্ন"
+**মার্জ না করে পরিবর্তন ডাউনলোড করুন:**
+```bash
+git fetch
```
----
-
-## 📁 সরানো/নাম পরিবর্তন
+**পরিবর্তন ডাউনলোড ও মার্জ করুন:**
+```bash
+git pull
+```
-### ফাইল সরানো এবং নাম পরিবর্তন:
+**মেইন ব্রাঞ্চ থেকে পরিবর্তন আনুন:**
+```bash
+git pull origin master
+```
+**রিবেস সহ পুল করুন:**
```bash
-# ফাইলের নাম পরিবর্তন করুন
-git mv পুরানো_নাম.txt নতুন_নাম.txt
+git pull --rebase
+```
-# ফাইল ফোল্ডারে সরান
-git mv ফাইল.txt ফোল্ডার/
+### পুশ ও প্রকাশ
-# ফোল্ডারের নাম পরিবর্তন করুন
-git mv পুরানো_ফোল্ডার নতুন_ফোল্ডার
+**লোকাল পরিবর্তন প্রকাশ করুন:**
+```bash
+git push
+```
-# git mv ছাড়া নাম পরিবর্তনের প্রক্রিয়া
-mv পুরানো_নাম.txt নতুন_নাম.txt
-git add নতুন_নাম.txt
-git rm পুরানো_নাম.txt
+**রিমোট ব্রাঞ্চ মুছুন:**
+```bash
+# Git v1.7.0+
+git push --delete
-# লগে নাম পরিবর্তন খুঁজুন
-git log --follow ফাইল.txt
+# Git v1.5.0+
+git push :
+```
-# সরানো ট্র্যাক করুন
-git log --stat -M
+**ট্যাগ প্রকাশ করুন:**
+```bash
+git push --tags
```
---
-## 🏷️ ট্যাগ
+## 🔀 মার্জ ও রিবেস
-### ভার্সন ট্যাগ পরিচালনা:
+### মার্জ অপারেশন
+**বর্তমান HEAD-এ ব্রাঞ্চ মার্জ করুন:**
```bash
-# সব ট্যাগ দেখুন
-git tag
-
-# হালকা ট্যাগ তৈরি করুন
-git tag <ট্যাগ-নাম>
-
-# টীকাযুক্ত ট্যাগ তৈরি করুন
-git tag -a <ট্যাগ-নাম> -m "ট্যাগ বার্তা"
-
-# নির্দিষ্ট কমিটে ট্যাগ তৈরি করুন
-git tag -a <ট্যাগ-নাম> <কমিট-হ্যাশ>
+git merge
+```
-# ট্যাগের তথ্য দেখুন
-git show <ট্যাগ-নাম>
+**গ্লোবালভাবে মার্জ টুল কনফিগার করুন:**
+```bash
+git config --global merge.tool meld
+```
-# লোকাল ট্যাগ মুছুন
-git tag -d <ট্যাগ-নাম>
+**কনফিগার করা মার্জ টুল ব্যবহার করুন:**
+```bash
+git mergetool
+```
-# রিমোট ট্যাগ মুছুন
-git push --delete <রিমোট> <ট্যাগ-নাম>
+### রিবেস অপারেশন
-# নির্দিষ্ট ট্যাগ পুশ করুন
-git push <রিমোট> <ট্যাগ-নাম>
+> ⚠️ **সতর্কতা:** প্রকাশিত কমিট রিবেস করবেন না!
-# সব ট্যাগ পুশ করুন
-git push <রিমোট> --tags
+**বর্তমান HEAD ব্রাঞ্চে রিবেস করুন:**
+```bash
+git rebase
```
----
+**রিবেস বাতিল করুন:**
+```bash
+git rebase --abort
+```
-## ↩️ পরিবর্তন পূর্বাবস্থায় ফেরানো
+**কনফ্লিক্ট সমাধানের পর রিবেস চালিয়ে যান:**
+```bash
+git rebase --continue
+```
-### পরিবর্তন ফিরিয়ে আনুন:
+### কনফ্লিক্ট সমাধান
+**ফাইলকে সমাধানকৃত হিসেবে চিহ্নিত করুন:**
```bash
-# নির্দিষ্ট ফাইলের পরিবর্তন বাতিল করুন
-git checkout <ফাইল>
-
-# সব অকমিট পরিবর্তন বাতিল করুন
-git checkout .
+git add
+```
-# নির্দিষ্ট ভার্সনে ফাইল ফিরিয়ে আনুন
-git checkout <কমিট-হ্যাশ> <ফাইল>
+**সমাধানকৃত ফাইল মুছুন:**
+```bash
+git rm
+```
-# স্টেজিং এরিয়া থেকে ফাইল সরান
-git reset <ফাইল>
+### কমিট স্কোয়াশ করা
-# স্টেজিং এরিয়া থেকে সব ফাইল সরান
-git reset
+**স্কোয়াশ করার জন্য ইন্টারঅ্যাক্টিভ রিবেস:**
+```bash
+git rebase -i
+```
-# পূর্ববর্তী কমিটে ফিরে যান (পরিবর্তন রাখুন)
-git reset --soft HEAD~1
+**স্কোয়াশ কনফিগারেশনের উদাহরণ:**
+```
+# আগে
+pick
+pick
+pick
+
+# পরে (commit_id2 এবং commit_id3 কে commit_id তে স্কোয়াশ করুন)
+pick
+squash
+squash
+```
-# পূর্ববর্তী কমিটে ফিরে যান (পরিবর্তন বাতিল করুন)
-git reset --hard HEAD~1
+---
-# নির্দিষ্ট কমিটে ফিরে যান
-git reset --hard <কমিট-হ্যাশ>
+## ↩️ পূর্বাবস্থায় ফেরানো
-# অন্য কমিট বাতিল করে নতুন কমিট তৈরি করুন
-git revert <কমিট-হ্যাশ>
+### পরিবর্তন বাতিল করুন
-# একাধিক কমিট বাতিল করুন
-git revert <হ্যাশ-থেকে>..<হ্যাশ-পর্যন্ত>
+**সব লোকাল পরিবর্তন বাতিল করুন:**
+```bash
+git reset --hard HEAD
```
----
-
-## 📦 স্ট্যাশ
-
-### অস্থায়ীভাবে কাজ সংরক্ষণ করুন:
+**সব ফাইল আনস্টেজ করুন:**
+```bash
+git reset HEAD
+```
+**নির্দিষ্ট ফাইলের পরিবর্তন বাতিল করুন:**
```bash
-# বর্তমান পরিবর্তন স্ট্যাশে সংরক্ষণ করুন
-git stash
+git checkout HEAD
+```
-# বর্ণনামূলক বার্তা সহ সংরক্ষণ করুন
-git stash save "বর্ণনামূলক বার্তা"
+### রিসেট অপারেশন
-# সব স্ট্যাশ দেখুন
-git stash list
+**আগের কমিটে রিসেট করুন (সব পরিবর্তন বাতিল করুন):**
+```bash
+git reset --hard
+```
-# শেষ স্ট্যাশ প্রয়োগ করুন
-git stash apply
+**রিমোট ব্রাঞ্চের অবস্থায় রিসেট করুন:**
+```bash
+git reset --hard
+# উদাহরণ: git reset --hard upstream/master
+```
-# নির্দিষ্ট স্ট্যাশ প্রয়োগ করুন
-git stash apply stash@{0}
+**পরিবর্তন আনস্টেজড হিসেবে রেখে রিসেট করুন:**
+```bash
+git reset
+```
-# শেষ স্ট্যাশ প্রয়োগ করে মুছে ফেলুন
-git stash pop
+**অকমিটেড লোকাল পরিবর্তন রেখে রিসেট করুন:**
+```bash
+git reset --keep
+```
-# নির্দিষ্ট স্ট্যাশ মুছুন
-git stash drop stash@{0}
+### কমিট রিভার্ট
-# সব স্ট্যাশ মুছুন
-git stash clear
+**কমিট রিভার্ট করুন (বিপরীত পরিবর্তন সহ নতুন কমিট তৈরি করুন):**
+```bash
+git revert
+```
-# স্ট্যাশের পরিবর্তন দেখুন
-git stash show stash@{0}
+### উপেক্ষিত ফাইল পরিষ্কার করুন
-# স্ট্যাশ থেকে ব্রাঞ্চ তৈরি করুন
-git stash branch <ব্রাঞ্চ-নাম> stash@{0}
+**ভুলবশত কমিট হওয়া উপেক্ষিত ফাইল মুছুন:**
+```bash
+git rm -r --cached .
+git add .
+git commit -m "remove ignored files"
```
---
## 🌊 Git Flow
-Git Flow একটি ব্রাঞ্চিং মডেল যা প্রজেক্ট রিলিজের চারপাশে ডিজাইন করা কঠোর ওয়ার্কফ্লো সংজ্ঞায়িত করে।
+**উন্নত Git-flow:** [git-flow-avh](https://github.com/petervanderdoes/gitflow-avh)
-### মূল ব্রাঞ্চ:
-- **master/main**: প্রোডাকশন কোড
-- **develop**: মূল ডেভেলপমেন্ট ব্রাঞ্চ
+### 📋 সূচিপত্র
+- [🔧 সেটআপ](#setup-1)
+- [🚀 শুরু করা](#getting-started)
+- [✨ ফিচার](#features)
+- [🎁 রিলিজ তৈরি](#make-a-release)
+- [🔥 হটফিক্স](#hotfixes)
+- [📊 কমান্ড ওভারভিউ](#commands-overview)
-### সাপোর্ট ব্রাঞ্চ:
-- **feature**: নতুন ফিচারের জন্য
-- **release**: নতুন ভার্সন প্রস্তুতির জন্য
-- **hotfix**: প্রোডাকশনে জরুরি সংশোধনের জন্য
+---
-### Git Flow কমান্ড:
+### 🔧 সেটআপ {#setup-1}
+> **পূর্বশর্ত:** কার্যকরী Git ইনস্টলেশন প্রয়োজন। Git-flow macOS, Linux এবং Windows-এ কাজ করে।
+
+**macOS (Homebrew):**
```bash
-# git flow শুরু করুন
-git flow init
+brew install git-flow-avh
+```
-# নতুন ফিচার শুরু করুন
-git flow feature start <ফিচার-নাম>
+**macOS (MacPorts):**
+```bash
+port install git-flow
+```
-# ফিচার শেষ করুন
-git flow feature finish <ফিচার-নাম>
+**Linux (Debian-ভিত্তিক):**
+```bash
+sudo apt-get install git-flow
+```
-# ফিচার প্রকাশ করুন
-git flow feature publish <ফিচার-নাম>
+**Windows (Cygwin):**
+> wget এবং util-linux প্রয়োজন
+```bash
+wget -q -O - --no-check-certificate https://raw.githubusercontent.com/petervanderdoes/gitflow/develop/contrib/gitflow-installer.sh install | bash
+```
-# রিলিজ শুরু করুন
-git flow release start <ভার্সন>
+---
-# রিলিজ শেষ করুন
-git flow release finish <ভার্সন>
+### 🚀 শুরু করা
-# হটফিক্স শুরু করুন
-git flow hotfix start <ভার্সন>
+আপনার প্রজেক্ট সেটআপ কাস্টমাইজ করতে Git-flow-এর ইনিশিয়ালাইজেশন প্রয়োজন।
-# হটফিক্স শেষ করুন
-git flow hotfix finish <ভার্সন>
+**ইনিশিয়ালাইজ করুন (ইন্টারঅ্যাক্টিভ):**
+```bash
+git flow init
```
+> আপনাকে ব্রাঞ্চ নামকরণ নিয়ম সম্পর্কে প্রশ্নের উত্তর দিতে হবে। ডিফল্ট মান সুপারিশ করা হয়।
-### Git Flow ছাড়া ওয়ার্কফ্লো:
+**ইনিশিয়ালাইজ করুন (ডিফল্ট ব্যবহার করুন):**
+```bash
+git flow init -d
+```
-
+---
+### ✨ ফিচার
+
+ফিচারগুলো আসন্ন রিলিজের জন্য নতুন কার্যকারিতা ডেভেলপ করতে ব্যবহৃত হয়। এগুলো সাধারণত শুধুমাত্র ডেভেলপার রিপোজিটরিতে থাকে।
+
+**নতুন ফিচার শুরু করুন:**
```bash
-# ফিচার ব্রাঞ্চ তৈরি করুন
-git checkout develop
-git checkout -b feature/নতুন-ফিচার
+git flow feature start MYFEATURE
+```
+> 'develop' ভিত্তিক ফিচার ব্রাঞ্চ তৈরি করে এবং সেখানে সুইচ করে
-# ফিচারে কাজ করুন
-git add .
-git commit -m "নতুন ফিচার যোগ করুন"
+**ফিচার শেষ করুন:**
+```bash
+git flow feature finish MYFEATURE
+```
+> এটি করবে:
+> 1. MYFEATURE কে 'develop'-এ মার্জ করবে
+> 2. ফিচার ব্রাঞ্চ মুছে দেবে
+> 3. 'develop'-এ ফিরে যাবে
-# develop এ ফিচার মার্জ করুন
-git checkout develop
-git merge --no-ff feature/নতুন-ফিচার
-git branch -d feature/নতুন-ফিচার
+**ফিচার প্রকাশ করুন (সহযোগিতার জন্য):**
+```bash
+git flow feature publish MYFEATURE
+```
-# রিলিজ ব্রাঞ্চ তৈরি করুন
-git checkout develop
-git checkout -b release/1.0.0
+**প্রকাশিত ফিচার আনুন:**
+```bash
+git flow feature pull origin MYFEATURE
+```
-# রিলিজ সম্পন্ন করুন
-git checkout master
-git merge --no-ff release/1.0.0
-git tag -a 1.0.0 -m "ভার্সন 1.0.0"
-git checkout develop
-git merge --no-ff release/1.0.0
-git branch -d release/1.0.0
+**অরিজিন ফিচার ট্র্যাক করুন:**
+```bash
+git flow feature track MYFEATURE
```
---
-## 💡 উপযোগী টিপস
+### 🎁 রিলিজ তৈরি
-### উপযোগী অ্যালিয়াস:
+রিলিজ নতুন প্রোডাকশন রিলিজের প্রস্তুতি সমর্থন করে, ছোট বাগ ফিক্স এবং মেটা-ডেটা প্রস্তুত করার অনুমতি দেয়।
+**রিলিজ শুরু করুন:**
```bash
-# উপযোগী অ্যালিয়াস সেট করুন
-git config --global alias.st status
-git config --global alias.co checkout
-git config --global alias.br branch
-git config --global alias.ci commit
-git config --global alias.unstage 'reset HEAD --'
-git config --global alias.last 'log -1 HEAD'
-git config --global alias.visual '!gitk'
+git flow release start RELEASE [BASE]
```
+> 'develop' থেকে রিলিজ ব্রাঞ্চ তৈরি করে। ঐচ্ছিকভাবে [BASE] কমিট SHA-1 উল্লেখ করুন।
-### .gitignore ফাইল:
+**রিলিজ প্রকাশ করুন:**
+```bash
+git flow release publish RELEASE
+```
+**রিমোট রিলিজ ট্র্যাক করুন:**
```bash
-# .gitignore ফাইল তৈরি করুন
-echo "node_modules/" >> .gitignore
-echo "*.log" >> .gitignore
-echo ".env" >> .gitignore
+git flow release track RELEASE
+```
-# ইতিমধ্যে ট্র্যাক করা ফাইল উপেক্ষা করুন
-git rm --cached <ফাইল>
-echo "<ফাইল>" >> .gitignore
-git add .gitignore
-git commit -m ".gitignore এ ফাইল যোগ করুন"
+**রিলিজ শেষ করুন:**
+```bash
+git flow release finish RELEASE
```
+> এটি করবে:
+> 1. রিলিজ ব্রাঞ্চকে 'master'-এ মার্জ করবে
+> 2. রিলিজ ট্যাগ করবে
+> 3. 'develop'-এ রিলিজ ব্যাক-মার্জ করবে
+> 4. রিলিজ ব্রাঞ্চ মুছে দেবে
+
+> 💡 **ভুলবেন না:** `git push --tags` দিয়ে আপনার ট্যাগ পুশ করুন
---
-## 🌍 অন্যান্য ভাষা
+### 🔥 হটফিক্স
-এই Git চিট শিট নিম্নলিখিত ভাষায় উপলব্ধ:
-
-- 🇺🇸 [English](../README.md)
-- 🇸🇦 [العربية](git-cheat-sheet-ar.md)
-- 🇧🇩 **বাংলা** (বর্তমান)
-- 🇩🇪 [Deutsch](git-cheat-sheet-de.md)
-- 🇬🇷 [Ελληνικά](git-cheat-sheet-el.md)
-- 🇪🇸 [Español](git-cheat-sheet-es.md)
-- 🇮🇳 [हिन्दी](git-cheat-sheet-hi.md)
-- 🇰🇷 [한국어](git-cheat-sheet-ko.md)
-- 🇵🇱 [Polski](git-cheat-sheet-pl.md)
-- 🇧🇷 [Português](git-cheat-sheet-pt_BR.md)
-- 🇹🇷 [Türkçe](git-cheat-sheet-tr.md)
-- 🇨🇳 [中文](git-cheat-sheet-zh.md)
+হটফিক্স লাইভ প্রোডাকশন ভার্সনের গুরুতর সমস্যা সমাধান করে। এগুলো master-এর সংশ্লিষ্ট ট্যাগ থেকে ব্রাঞ্চ করে।
+
+**হটফিক্স শুরু করুন:**
+```bash
+git flow hotfix start VERSION [BASENAME]
+```
+
+**হটফিক্স শেষ করুন:**
+```bash
+git flow hotfix finish VERSION
+```
+> 'develop' এবং 'master' উভয়েই ব্যাক-মার্জ করে এবং master মার্জ ট্যাগ করে
---
-## 🤝 অবদান
+### 📊 কমান্ড ওভারভিউ
-আমরা অবদানকে স্বাগত জানাই! এই প্রকল্পটি উন্নত করতে সাহায্য করুন:
+
+
+
-1. **সমস্যা রিপোর্ট করুন**: ত্রুটি বা উন্নতির পরামর্শ শেয়ার করুন
-2. **নতুন ভাষা যোগ করুন**: অনুবাদ তৈরি করুন বা বিদ্যমান উন্নত করুন
-3. **বিষয়বস্তু উন্নত করুন**: নতুন কমান্ড, উদাহরণ বা ব্যাখ্যা যোগ করুন
-4. **প্রতিক্রিয়া দিন**: আপনার অভিজ্ঞতা এবং পরামর্শ শেয়ার করুন
+### 🌊 Git Flow স্কিমা
-### কিভাবে অবদান রাখবেন:
-- [GitHub এ ইস্যু খুলুন](https://github.com/arslanbilal/git-cheat-sheet/issues)
-- Pull request জমা দিন
-- ডকুমেন্টেশন উন্নতির পরামর্শ দিন
+
+
+
---
-## 📄 লাইসেন্স
-এই প্রকল্পটি MIT লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত। বিস্তারিত জানতে [LICENSE](../LICENSE) ফাইল দেখুন।
+## 🌍 অন্যান্য ভাষা
+
+এই চিট শিটটি একাধিক ভাষায় উপলব্ধ:
+
+| ভাষা | লিংক |
+|----------|------|
+| 🇸🇦 আরবি | [git-cheat-sheet-ar.md](git-cheat-sheet-ar.md) |
+| 🇧🇩 **বাংলা** | **(বর্তমান)** |
+| 🇧🇷 ব্রাজিলিয়ান পর্তুগিজ | [git-cheat-sheet-pt_BR.md](git-cheat-sheet-pt_BR.md) |
+| 🇨🇳 চীনা | [git-cheat-sheet-zh.md](git-cheat-sheet-zh.md) |
+| 🇩🇪 জার্মান | [git-cheat-sheet-de.md](git-cheat-sheet-de.md) |
+| 🇬🇷 গ্রিক | [git-cheat-sheet-el.md](git-cheat-sheet-el.md) |
+| 🇮🇳 হিন্দি | [git-cheat-sheet-hi.md](git-cheat-sheet-hi.md) |
+| 🇰🇷 কোরিয়ান | [git-cheat-sheet-ko.md](git-cheat-sheet-ko.md) |
+| 🇵🇱 পোলিশ | [git-cheat-sheet-pl.md](git-cheat-sheet-pl.md) |
+| 🇪🇸 স্প্যানিশ | [git-cheat-sheet-es.md](git-cheat-sheet-es.md) |
+| 🇹🇷 তুর্কি | [git-cheat-sheet-tr.md](git-cheat-sheet-tr.md) |
+| 🇺🇸 ইংরেজি | [README.md](../README.md) |
---
-## 📖 অতিরিক্ত সম্পদ
+## 🤝 অবদান
+
+আমরা অবদানকে স্বাগত জানাই! আপনি যা করতে পারেন:
+
+- 🐛 বাগ বা টাইপো রিপোর্ট করুন
+- ✨ নতুন Git কমান্ড যোগ করুন
+- 🌍 নতুন ভাষায় অনুবাদ করুন
+- 💡 ব্যাখ্যা উন্নত করুন
+- 📝 ফরম্যাটিং উন্নত করুন
+
+**কিভাবে অবদান রাখবেন:**
+1. এই রিপোজিটরি ফর্ক করুন
+2. আপনার ফিচার ব্রাঞ্চ তৈরি করুন (`git checkout -b feature/AmazingFeature`)
+3. আপনার পরিবর্তন কমিট করুন (`git commit -m 'Add some AmazingFeature'`)
+4. ব্রাঞ্চে পুশ করুন (`git push origin feature/AmazingFeature`)
+5. একটি Pull Request খুলুন
+
+---
+
+## 📄 লাইসেন্স
-- [Git অফিসিয়াল ডকুমেন্টেশন](https://git-scm.com/doc)
-- [Atlassian Git টিউটোরিয়াল](https://www.atlassian.com/git/tutorials)
-- [GitHub Git চিট শিট](https://education.github.com/git-cheat-sheet-education.pdf)
-- [ইন্টারঅ্যাক্টিভ Git টিউটোরিয়াল](https://learngitbranching.js.org/)
+এই প্রকল্পটি ওপেন সোর্স এবং [MIT লাইসেন্স](../LICENSE)-এর অধীনে উপলব্ধ।
---
-
- ⭐ এই চিট শিট যদি উপকারী হয় তাহলে এটিকে স্টার দিন!
- Git এর সাথে হ্যাপি কোডিং! 🚀
-
+
+ ⭐ এই রিপোজিটরি সহায়ক হলে স্টার দিন!
+
diff --git a/other-sheets/git-cheat-sheet-de.md b/other-sheets/git-cheat-sheet-de.md
index 114c0f3..4cbe850 100644
--- a/other-sheets/git-cheat-sheet-de.md
+++ b/other-sheets/git-cheat-sheet-de.md
@@ -1,8 +1,9 @@
-# Git Cheat Sheet Deutsch
+# Git und Git Flow Cheat Sheet
+[](https://github.com/sindresorhus/awesome)
-
-
-Dieses umfassende Git-Cheat-Sheet hilft Ihnen dabei, Git-Befehle zu beherrschen, ohne alles auswendig zu lernen. Egal, ob Sie Anfänger oder erfahrener Entwickler sind, dieser Leitfaden bietet eine schnelle Referenz für wichtige Git-Operationen.
+
+
+
---
@@ -20,7 +21,6 @@ Dieses umfassende Git-Cheat-Sheet hilft Ihnen dabei, Git-Befehle zu beherrschen,
## 📋 Inhaltsverzeichnis
-- [📖 Über](#-Über)
- [🔧 Setup](#-setup)
- [⚙️ Konfigurationsdateien](#️-konfigurationsdateien)
- [🆕 Repository erstellen](#-repository-erstellen)
@@ -32,13 +32,8 @@ Dieses umfassende Git-Cheat-Sheet hilft Ihnen dabei, Git-Befehle zu beherrschen,
- [🔄 Aktualisieren & Veröffentlichen](#-aktualisieren--veröffentlichen)
- [🔀 Merge & Rebase](#-merge--rebase)
- [↩️ Rückgängig machen](#️-rückgängig-machen)
-- [📦 Zwischenspeichern (Stash)](#-zwischenspeichern-stash)
- [🌊 Git Flow](#-git-flow)
-- [💡 Nützliche Tipps](#-nützliche-tipps)
- [🌍 Andere Sprachen](#-andere-sprachen)
-- [🤝 Beitragen](#-beitragen)
-- [📄 Lizenz](#-lizenz)
-- [📖 Zusätzliche Ressourcen](#-zusätzliche-ressourcen)
---
@@ -661,62 +656,6 @@ git commit -m "ignorierte Dateien entfernen"
---
-## 📦 Zwischenspeichern (Stash)
-
-### Änderungen temporär speichern
-
-**Aktuelle Änderungen zwischenspeichern:**
-```bash
-git stash
-```
-
-**Mit beschreibender Nachricht zwischenspeichern:**
-```bash
-git stash save "Beschreibende Nachricht"
-```
-
-**Alle Stashes anzeigen:**
-```bash
-git stash list
-```
-
-**Letzten Stash anwenden:**
-```bash
-git stash apply
-```
-
-**Spezifischen Stash anwenden:**
-```bash
-git stash apply stash@{0}
-```
-
-**Letzten Stash anwenden und entfernen:**
-```bash
-git stash pop
-```
-
-**Spezifischen Stash entfernen:**
-```bash
-git stash drop stash@{0}
-```
-
-**Alle Stashes entfernen:**
-```bash
-git stash clear
-```
-
-**Änderungen in einem Stash anzeigen:**
-```bash
-git stash show stash@{0}
-```
-
-**Branch aus Stash erstellen:**
-```bash
-git stash branch stash@{0}
-```
-
----
-
## 🌊 Git Flow
**Verbesserter Git-flow:** [git-flow-avh](https://github.com/petervanderdoes/gitflow-avh)
@@ -876,52 +815,6 @@ git flow hotfix finish VERSION
---
-## 💡 Nützliche Tipps
-
-### Nützliche Aliases
-
-**Nützliche Aliases konfigurieren:**
-```bash
-git config --global alias.st status
-git config --global alias.co checkout
-git config --global alias.br branch
-git config --global alias.ci commit
-git config --global alias.unstage 'reset HEAD --'
-git config --global alias.last 'log -1 HEAD'
-git config --global alias.visual '!gitk'
-```
-
-### .gitignore Dateien
-
-**.gitignore Datei erstellen:**
-```bash
-echo "node_modules/" >> .gitignore
-echo "*.log" >> .gitignore
-echo ".env" >> .gitignore
-
-# Bereits verfolgte Dateien ignorieren
-git rm --cached
-echo "" >> .gitignore
-git add .gitignore
-git commit -m "Datei zu .gitignore hinzufügen"
-```
-
-### Git Hooks
-
-**Lokale Hooks konfigurieren:**
-```bash
-# Pre-commit Hook (Beispiel)
-cat > .git/hooks/pre-commit << 'EOF'
-#!/bin/sh
-# Tests vor jedem Commit ausführen
-npm test
-EOF
-
-chmod +x .git/hooks/pre-commit
-```
-
----
-
## 🌍 Andere Sprachen
Dieses Cheat-Sheet ist in mehreren Sprachen verfügbar:
@@ -933,11 +826,12 @@ Dieses Cheat-Sheet ist in mehreren Sprachen verfügbar:
| 🇧🇩 Bengali | [git-cheat-sheet-bn.md](./git-cheat-sheet-bn.md) |
| 🇧🇷 Brasilianisches Portugiesisch | [git-cheat-sheet-pt_BR.md](./git-cheat-sheet-pt_BR.md) |
| 🇨🇳 Chinesisch | [git-cheat-sheet-zh.md](./git-cheat-sheet-zh.md) |
-| 🇪🇸 Spanisch | [git-cheat-sheet-es.md](./git-cheat-sheet-es.md) |
+| 🇩🇪 **Deutsch (aktuell)** | |
| 🇬🇷 Griechisch | [git-cheat-sheet-el.md](./git-cheat-sheet-el.md) |
| 🇮🇳 Hindi | [git-cheat-sheet-hi.md](./git-cheat-sheet-hi.md) |
| 🇰🇷 Koreanisch | [git-cheat-sheet-ko.md](./git-cheat-sheet-ko.md) |
| 🇵🇱 Polnisch | [git-cheat-sheet-pl.md](./git-cheat-sheet-pl.md) |
+| 🇪🇸 Spanisch | [git-cheat-sheet-es.md](./git-cheat-sheet-es.md) |
| 🇹🇷 Türkisch | [git-cheat-sheet-tr.md](./git-cheat-sheet-tr.md) |
---
@@ -967,17 +861,6 @@ Dieses Projekt ist Open Source und unter der [MIT-Lizenz](LICENSE) verfügbar.
---
-## 📖 Zusätzliche Ressourcen
-
-- [Offizielle Git-Dokumentation](https://git-scm.com/doc)
-- [Atlassian Git-Tutorials](https://www.atlassian.com/git/tutorials)
-- [GitHub Git Cheat Sheet](https://education.github.com/git-cheat-sheet-education.pdf)
-- [Interaktives Git-Tutorial](https://learngitbranching.js.org/)
-- [Pro Git Buch (kostenlos)](https://git-scm.com/book/de/v2)
-- [Git Workflows](https://www.atlassian.com/git/tutorials/comparing-workflows)
-
----
-
⭐ Geben Sie diesem Repository einen Stern, wenn es hilfreich war!
diff --git a/other-sheets/git-cheat-sheet-el.md b/other-sheets/git-cheat-sheet-el.md
index ae20ff7..4fc7042 100644
--- a/other-sheets/git-cheat-sheet-el.md
+++ b/other-sheets/git-cheat-sheet-el.md
@@ -1,677 +1,865 @@
-# Git Cheat Sheet Ελληνικά
+# Σύντομος Οδηγός Git και Git Flow
+[](https://github.com/sindresorhus/awesome)
-
-
-Ένας γρήγορος οδηγός αναφοράς για τις πιο χρησιμοποιούμενες εντολές Git, οργανωμένες σε κατηγορίες για εύκολη χρήση.
+
+
+
---
-## 📖 Σχετικά με τον Οδηγό
+## 📖 Σχετικά
-Αυτός ο περιεκτικός οδηγός αναφοράς Git είναι μια πλήρης αναφορά για όλους όσους θέλουν να βελτιώσουν τη ροή εργασίας τους με το Git. Από αρχάριους που ξεκινούν το ταξίδι τους με το Git μέχρι έμπειρους προγραμματιστές, αυτός ο οδηγός παρέχει οργανωμένες και κατηγοριοποιημένες εντολές για να επιταχύνει το ταξίδι ανάπτυξής σας.
+Αυτός ο περιεκτικός σύντομος οδηγός Git σας βοηθά να κατακτήσετε τις εντολές Git χωρίς να χρειάζεται να τις απομνημονεύσετε όλες. Είτε είστε αρχάριος είτε έμπειρος προγραμματιστής, αυτός ο οδηγός παρέχει γρήγορη αναφορά στις βασικές λειτουργίες Git.
-### Βασικά Χαρακτηριστικά:
-- **Οργανωμένες κατηγορίες**: Οι εντολές είναι ταξινομημένες σε σαφείς και λογικές ομάδες
-- **Πρακτικά παραδείγματα**: Με περιπτώσεις χρήσης από τον πραγματικό κόσμο
-- **Φιλικό προς αρχάριους**: Με σαφείς εξηγήσεις και συμβουλές
-- **Γρήγορη αναφορά**: Γρήγορη πρόσβαση στις απαραίτητες εντολές
+**Οι συνεισφορές είναι ευπρόσδεκτες!** Μπορείτε να:
+- Διορθώσετε γραμματικά λάθη
+- Προσθέσετε νέες εντολές
+- Μεταφράσετε στη γλώσσα σας
+- Βελτιώσετε τις εξηγήσεις
---
-
-## 📑 Πίνακας Περιεχομένων
-
-- [📖 Σχετικά με τον Οδηγό](#σχετικά-με-τον-οδηγό)
-- [🔧 Αρχική Ρύθμιση](#αρχική-ρύθμιση)
-- [📁 Ρύθμιση Αποθετηρίου](#ρύθμιση-αποθετηρίου)
-- [📊 Εντολές Κατάστασης](#εντολές-κατάστασης)
-- [📝 Διαχείριση Αρχείων](#διαχείριση-αρχείων)
-- [💾 Υποβολές (Commits)](#υποβολές-commits)
-- [🌿 Κλάδοι (Branches)](#κλάδοι-branches)
-- [🔀 Συγχώνευση (Merge)](#συγχώνευση-merge)
-- [🌐 Απομακρυσμένα Αποθετήρια](#απομακρυσμένα-αποθετήρια)
-- [📚 Ιστορικό και Αρχεία](#ιστορικό-και-αρχεία)
-- [🏷️ Ετικέτες (Tags)](#ετικέτες-tags)
-- [↩️ Αναίρεση Αλλαγών](#αναίρεση-αλλαγών)
-- [📦 Αποθήκευση (Stash)](#αποθήκευση-stash)
-- [🌊 Git Flow](#git-flow)
-- [⚙️ Αρχεία Ρυθμίσεων](#αρχεία-ρυθμίσεων)
-- [🔍 Αναζήτηση](#αναζήτηση)
-- [📁 Μετακίνηση/Μετονομασία](#μετακίνησημετονομασία)
-- [💡 Χρήσιμες Συμβουλές](#χρήσιμες-συμβουλές)
-- [🌍 Άλλες Γλώσσες](#άλλες-γλώσσες)
-- [🤝 Συνεισφορά](#συνεισφορά)
-- [📄 Άδεια Χρήσης](#άδεια-χρήσης)
-- [📖 Επιπλέον Πόροι](#επιπλέον-πόροι)
+## 📋 Πίνακας Περιεχομένων
+
+- [🔧 Ρύθμιση](#-ρύθμιση)
+- [⚙️ Αρχεία Ρυθμίσεων](#️-αρχεία-ρυθμίσεων)
+- [🆕 Δημιουργία Αποθετηρίου](#-δημιουργία-αποθετηρίου)
+- [📝 Τοπικές Αλλαγές](#-τοπικές-αλλαγές)
+- [🔍 Αναζήτηση](#-αναζήτηση)
+- [📖 Ιστορικό Υποβολών](#-ιστορικό-υποβολών)
+- [📁 Μετακίνηση / Μετονομασία](#-μετακίνηση--μετονομασία)
+- [🌿 Κλάδοι & Ετικέτες](#-κλάδοι--ετικέτες)
+- [🔄 Ενημέρωση & Δημοσίευση](#-ενημέρωση--δημοσίευση)
+- [🔀 Συγχώνευση & Rebase](#-συγχώνευση--rebase)
+- [↩️ Αναίρεση](#️-αναίρεση)
+- [🌊 Git Flow](#-git-flow)
+- [🌍 Άλλες Γλώσσες](#-άλλες-γλώσσες)
---
-## 🔧 Αρχική Ρύθμιση
+## 🔧 Ρύθμιση
-Ρυθμίστε το Git με τις προσωπικές σας πληροφορίες:
+### Προβολή Ρυθμίσεων
+**Εμφάνιση τρέχουσας ρύθμισης:**
```bash
-# Ρύθμιση ονόματος χρήστη
-git config --global user.name "Το Όνομά Σας"
-
-# Ρύθμιση email
-git config --global user.email "email@example.com"
-
-# Προβολή τρεχουσών ρυθμίσεων
git config --list
+```
-# Ρύθμιση προεπιλεγμένου επεξεργαστή
-git config --global core.editor "nano"
+**Εμφάνιση ρυθμίσεων αποθετηρίου:**
+```bash
+git config --local --list
+```
-# Ρύθμιση εργαλείου συγχώνευσης
-git config --global merge.tool vimdiff
+**Εμφάνιση καθολικών ρυθμίσεων:**
+```bash
+git config --global --list
```
----
+**Εμφάνιση ρυθμίσεων συστήματος:**
+```bash
+git config --system --list
+```
-## 📁 Ρύθμιση Αποθετηρίου
+### Ρύθμιση Χρήστη
-### Δημιουργία νέου αποθετηρίου:
+**Ορισμός ονόματος για το ιστορικό εκδόσεων:**
+```bash
+git config --global user.name "[firstname lastname]"
+```
+**Ορισμός διεύθυνσης email:**
```bash
-# Δημιουργία νέου Git αποθετηρίου
-git init
+git config --global user.email "[valid-email]"
+```
-# Κλωνοποίηση υπάρχοντος αποθετηρίου
-git clone
+### Ρυθμίσεις Εμφάνισης & Επεξεργαστή
-# Κλωνοποίηση σε συγκεκριμένο φάκελο
-git clone <όνομα-φακέλου>
+**Ενεργοποίηση αυτόματου χρωματισμού γραμμής εντολών:**
+```bash
+git config --global color.ui auto
```
----
-
-## 📊 Εντολές Κατάστασης
+**Ορισμός καθολικού επεξεργαστή για υποβολές:**
+```bash
+git config --global core.editor vi
+```
-### Έλεγχος κατάστασης του αποθετηρίου σας:
+---
-```bash
-# Προβολή τρέχουσας κατάστασης αποθετηρίου
-git status
+## ⚙️ Αρχεία Ρυθμίσεων
-# Προβολή κατάστασης σε σύντομη μορφή
-git status -s
+| Εύρος | Τοποθεσία | Σημαία Εντολής |
+|-------|----------|--------------|
+| **Αποθετήριο** | `/.git/config` | `--local` |
+| **Χρήστης** | `~/.gitconfig` | `--global` |
+| **Σύστημα** | `/etc/gitconfig` | `--system` |
-# Προβολή κατάστασης αγνοώντας μη παρακολουθούμενα αρχεία
-git status --ignored
+---
-# Προβολή διαφορών σε τροποποιημένα αρχεία
-git diff
+## 🆕 Δημιουργία Αποθετηρίου
-# Προβολή διαφορών στην περιοχή staging
-git diff --staged
+### Κλωνοποίηση Υπάρχοντος Αποθετηρίου
-# Προβολή διαφορών μεταξύ κλάδων
-git diff <κλάδος1> <κλάδος2>
+**Μέσω SSH:**
+```bash
+git clone ssh://user@domain.com/repo.git
```
----
-
-## 📝 Διαχείριση Αρχείων
+**Μέσω HTTPS:**
+```bash
+git clone https://domain.com/user/repo.git
+```
-### Προσθήκη και αφαίρεση αρχείων:
+### Αρχικοποίηση Νέου Αποθετηρίου
+**Δημιουργία αποθετηρίου στον τρέχοντα κατάλογο:**
```bash
-# Προσθήκη συγκεκριμένου αρχείου στην περιοχή staging
-git add <αρχείο>
+git init
+```
-# Προσθήκη όλων των τροποποιημένων αρχείων
-git add .
+**Δημιουργία αποθετηρίου σε συγκεκριμένο κατάλογο:**
+```bash
+git init
+```
-# Προσθήκη όλων των αρχείων συγκεκριμένου τύπου
-git add *.txt
+---
-# Διαδραστική προσθήκη
-git add -i
+## 📝 Τοπικές Αλλαγές
-# Αφαίρεση αρχείου από αποθετήριο και φάκελο εργασίας
-git rm <αρχείο>
+### Έλεγχος Κατάστασης & Διαφορών
-# Αφαίρεση αρχείου μόνο από αποθετήριο (διατήρηση στον φάκελο)
-git rm --cached <αρχείο>
+**Προβολή κατάστασης καταλόγου εργασίας:**
+```bash
+git status
+```
-# Μετακίνηση/μετονομασία αρχείου
-git mv <αρχείο-πηγής> <αρχείο-προορισμού>
+**Εμφάνιση αλλαγών σε παρακολουθούμενα αρχεία:**
+```bash
+git diff
```
----
+**Εμφάνιση αλλαγών σε συγκεκριμένο αρχείο:**
+```bash
+git diff
+```
-## 💾 Υποβολές (Commits)
+### Προσθήκη Αλλαγών στο Staging
-### Αποθήκευση αλλαγών στο αποθετήριο:
+**Προσθήκη όλων των τρεχουσών αλλαγών:**
+```bash
+git add .
+```
+**Προσθήκη συγκεκριμένων αρχείων:**
```bash
-# Υποβολή με μήνυμα
-git commit -m "Μήνυμα υποβολής"
+git add
+```
-# Υποβολή προσθέτοντας όλα τα τροποποιημένα αρχεία
-git commit -am "Μήνυμα υποβολής"
+**Διαδραστική προσθήκη τμημάτων αρχείου:**
+```bash
+git add -p
+```
-# Τροποποίηση της τελευταίας υποβολής
-git commit --amend
+### Υποβολή Αλλαγών
-# Κενή υποβολή (χρήσιμη για CI/CD triggers)
-git commit --allow-empty -m "Trigger CI"
+**Υποβολή όλων των αλλαγών παρακολουθούμενων αρχείων:**
+```bash
+git commit -a
+```
-# Υποβολή με λεπτομερές μήνυμα (ανοίγει επεξεργαστή)
+**Υποβολή αλλαγών στο staging:**
+```bash
git commit
```
----
-
-## 🌿 Κλάδοι (Branches)
+**Υποβολή με μήνυμα:**
+```bash
+git commit -m 'message here'
+```
-### Εργασία με κλάδους:
+**Παράλειψη staging και υποβολή με μήνυμα:**
+```bash
+git commit -am 'message here'
+```
+**Υποβολή με συγκεκριμένη ημερομηνία:**
```bash
-# Προβολή όλων των κλάδων
-git branch
+git commit --date="`date --date='n day ago'`" -am ""
+```
-# Προβολή απομακρυσμένων κλάδων
-git branch -r
+### Τροποποίηση Τελευταίας Υποβολής
-# Προβολή όλων των κλάδων (τοπικών και απομακρυσμένων)
-git branch -a
+> ⚠️ **Προσοχή:** Μην τροποποιείτε δημοσιευμένες υποβολές!
-# Δημιουργία νέου κλάδου
-git branch <όνομα-κλάδου>
+**Τροποποίηση τελευταίας υποβολής:**
+```bash
+git commit -a --amend
+```
-# Μετάβαση σε κλάδο
-git checkout <όνομα-κλάδου>
+**Τροποποίηση χωρίς αλλαγή μηνύματος υποβολής:**
+```bash
+git commit --amend --no-edit
+```
-# Δημιουργία και μετάβαση σε νέο κλάδο
-git checkout -b <όνομα-κλάδου>
+**Αλλαγή ημερομηνίας committer:**
+```bash
+GIT_COMMITTER_DATE="date" git commit --amend
+```
-# Δημιουργία κλάδου από συγκεκριμένη υποβολή
-git checkout -b <όνομα-κλάδου>
+**Αλλαγή ημερομηνίας συγγραφέα:**
+```bash
+git commit --amend --date="date"
+```
+
+### Προσωρινή Αποθήκευση Αλλαγών
-# Διαγραφή κλάδου
-git branch -d <όνομα-κλάδου>
+**Προσωρινή αποθήκευση τρεχουσών αλλαγών:**
+```bash
+git stash
+```
+
+**Εφαρμογή τελευταίων αποθηκευμένων αλλαγών:**
+```bash
+git stash apply
+```
-# Βίαιη διαγραφή κλάδου
-git branch -D <όνομα-κλάδου>
+**Εφαρμογή συγκεκριμένου stash:**
+```bash
+git stash apply stash@{stash_number}
+```
+> Χρησιμοποιήστε `git stash list` για να δείτε τα διαθέσιμα stashes
-# Μετονομασία τρέχοντος κλάδου
-git branch -m <νέο-όνομα>
+**Αφαίρεση τελευταίου stash:**
+```bash
+git stash drop
+```
-# Μετονομασία συγκεκριμένου κλάδου
-git branch -m <παλιό-όνομα> <νέο-όνομα>
+**Μεταφορά μη υποβληθεισών αλλαγών σε άλλο κλάδο:**
+```bash
+git stash
+git checkout branch2
+git stash pop
```
---
-## 🔀 Συγχώνευση (Merge)
+## 🔍 Αναζήτηση
-### Συγχώνευση αλλαγών μεταξύ κλάδων:
+### Αναζήτηση Κειμένου
+**Αναζήτηση κειμένου σε όλα τα αρχεία:**
```bash
-# Συγχώνευση κλάδου στον τρέχοντα κλάδο
-git merge <όνομα-κλάδου>
+git grep "Hello"
+```
-# Συγχώνευση χωρίς fast-forward (δημιουργία merge commit)
-git merge --no-ff <όνομα-κλάδου>
+**Αναζήτηση σε συγκεκριμένη έκδοση:**
+```bash
+git grep "Hello" v2.5
+```
-# Συγχώνευση μόνο αν είναι fast-forward
-git merge --ff-only <όνομα-κλάδου>
+### Αναζήτηση Υποβολών
-# Ακύρωση τρέχουσας συγχώνευσης
-git merge --abort
+**Εύρεση υποβολών που εισήγαγαν συγκεκριμένη λέξη-κλειδί:**
+```bash
+git log -S 'keyword'
+```
-# Συνέχιση συγχώνευσης μετά την επίλυση συγκρούσεων
-git merge --continue
+**Αναζήτηση με κανονική έκφραση:**
+```bash
+git log -S 'keyword' --pickaxe-regex
```
---
-## 🌐 Απομακρυσμένα Αποθετήρια
+## 📖 Ιστορικό Υποβολών
-### Διαχείριση απομακρυσμένων αποθετηρίων:
+### Βασικό Ιστορικό
+**Εμφάνιση όλων των υποβολών (αναλυτικά):**
```bash
-# Προβολή απομακρυσμένων αποθετηρίων
-git remote
+git log
+```
-# Προβολή απομακρυσμένων αποθετηρίων με URLs
-git remote -v
+**Εμφάνιση υποβολών (μία γραμμή ανά υποβολή):**
+```bash
+git log --oneline
+```
-# Προσθήκη απομακρυσμένου αποθετηρίου
-git remote add <όνομα>
+**Εμφάνιση υποβολών συγκεκριμένου συγγραφέα:**
+```bash
+git log --author="username"
+```
-# Αλλαγή URL απομακρυσμένου αποθετηρίου
-git remote set-url <όνομα> <νέο-url>
+**Εμφάνιση αλλαγών για συγκεκριμένο αρχείο:**
+```bash
+git log -p
+```
-# Αφαίρεση απομακρυσμένου αποθετηρίου
-git remote remove <όνομα>
+### Προχωρημένο Ιστορικό
-# Αποστολή αλλαγών στο απομακρυσμένο αποθετήριο
-git push <απομακρυσμένο> <κλάδος>
+**Σύγκριση κλάδων:**
+```bash
+git log --oneline .. --left-right
+```
-# Αποστολή κλάδου και ρύθμιση παρακολούθησης
-git push -u <απομακρυσμένο> <κλάδος>
+**Εμφάνιση ποιος άλλαξε τι και πότε:**
+```bash
+git blame
+```
-# Αποστολή όλων των κλάδων
-git push --all
+### Αρχεία Αναφοράς
-# Αποστολή ετικετών
-git push --tags
+**Εμφάνιση αρχείου αναφοράς:**
+```bash
+git reflog show
+```
-# Λήψη αλλαγών από απομακρυσμένο αποθετήριο
-git pull <απομακρυσμένο> <κλάδος>
+**Διαγραφή αρχείου αναφοράς:**
+```bash
+git reflog delete
+```
+
+---
-# Λήψη αλλαγών χωρίς συγχώνευση
-git fetch <απομακρυσμένο>
+## 📁 Μετακίνηση / Μετονομασία
-# Λήψη όλων των απομακρυσμένων κλάδων
-git fetch --all
+**Μετονομασία αρχείου:**
+```bash
+git mv Index.txt Index.html
```
---
-## 📚 Ιστορικό και Αρχεία
+## 🌿 Κλάδοι & Ετικέτες
-### Εξερεύνηση ιστορικού υποβολών:
+### Λίστα Κλάδων
+**Λίστα τοπικών κλάδων:**
```bash
-# Προβολή ιστορικού υποβολών
-git log
+git branch
+```
-# Προβολή ιστορικού σε μία γραμμή ανά υποβολή
-git log --oneline
+**Λίστα όλων των κλάδων (τοπικών + απομακρυσμένων):**
+```bash
+git branch -a
+```
-# Προβολή ιστορικού με γράφημα
-git log --graph
+**Λίστα απομακρυσμένων κλάδων:**
+```bash
+git branch -r
+```
-# Προβολή ιστορικού συγκεκριμένου αρχείου
-git log <αρχείο>
+**Λίστα συγχωνευμένων κλάδων:**
+```bash
+git branch --merged
+```
-# Προβολή στατιστικών υποβολών
-git log --stat
+### Εναλλαγή & Δημιουργία Κλάδων
-# Προβολή αλλαγών σε κάθε υποβολή
-git log -p
+**Εναλλαγή σε υπάρχοντα κλάδο:**
+```bash
+git checkout
+```
-# Προβολή τελευταίων N υποβολών
-git log -n <αριθμός>
+**Δημιουργία και εναλλαγή σε νέο κλάδο:**
+```bash
+git checkout -b
+```
-# Προβολή υποβολών μεταξύ ημερομηνιών
-git log --since="2023-01-01" --until="2023-12-31"
+**Εναλλαγή στον προηγούμενο κλάδο:**
+```bash
+git checkout -
+```
-# Προβολή υποβολών ανά συγγραφέα
-git log --author="Όνομα Συγγραφέα"
+**Δημιουργία κλάδου από υπάρχοντα κλάδο:**
+```bash
+git checkout -b
+```
-# Αναζήτηση σε μηνύματα υποβολών
-git log --grep="λέξη κλειδί"
+**Δημιουργία κλάδου από συγκεκριμένη υποβολή:**
+```bash
+git checkout -b
```
----
+**Δημιουργία κλάδου χωρίς εναλλαγή:**
+```bash
+git branch
+```
-## 🏷️ Ετικέτες (Tags)
+**Δημιουργία κλάδου παρακολούθησης:**
+```bash
+git branch --track
+```
-### Διαχείριση ετικετών έκδοσης:
+### Λειτουργίες Κλάδων
+**Checkout μεμονωμένου αρχείου από διαφορετικό κλάδο:**
```bash
-# Προβολή όλων των ετικετών
-git tag
+git checkout --
+```
+
+**Εφαρμογή συγκεκριμένης υποβολής από άλλο κλάδο:**
+```bash
+git cherry-pick
+```
-# Δημιουργία ελαφριάς ετικέτας
-git tag <όνομα-ετικέτας>
+**Μετονομασία τρέχοντος κλάδου:**
+```bash
+git branch -m
+```
+
+**Διαγραφή τοπικού κλάδου:**
+```bash
+git branch -d
+```
-# Δημιουργία σχολιασμένης ετικέτας
-git tag -a <όνομα-ετικέτας> -m "Μήνυμα ετικέτας"
+**Αναγκαστική διαγραφή τοπικού κλάδου:**
+```bash
+git branch -D
+```
+> ⚠️ **Προσοχή:** Θα χάσετε τις μη συγχωνευμένες αλλαγές!
-# Δημιουργία ετικέτας σε συγκεκριμένη υποβολή
-git tag -a <όνομα-ετικέτας>
+### Ετικέτες
-# Προβολή πληροφοριών ετικέτας
-git show <όνομα-ετικέτας>
+**Δημιουργία ετικέτας στο HEAD:**
+```bash
+git tag
+```
-# Διαγραφή τοπικής ετικέτας
-git tag -d <όνομα-ετικέτας>
+**Δημιουργία σχολιασμένης ετικέτας:**
+```bash
+git tag -a
+```
-# Διαγραφή απομακρυσμένης ετικέτας
-git push --delete <απομακρυσμένο> <όνομα-ετικέτας>
+**Δημιουργία ετικέτας με μήνυμα:**
+```bash
+git tag -am 'message here'
+```
-# Αποστολή συγκεκριμένης ετικέτας
-git push <απομακρυσμένο> <όνομα-ετικέτας>
+**Λίστα όλων των ετικετών:**
+```bash
+git tag
+```
-# Αποστολή όλων των ετικετών
-git push <απομακρυσμένο> --tags
+**Λίστα ετικετών με μηνύματα:**
+```bash
+git tag -n
```
---
-## ↩️ Αναίρεση Αλλαγών
+## 🔄 Ενημέρωση & Δημοσίευση
-### Επαναφορά τροποποιήσεων:
+### Διαχείριση Απομακρυσμένων
+**Λίστα ρυθμισμένων απομακρυσμένων:**
```bash
-# Ακύρωση αλλαγών σε συγκεκριμένο αρχείο
-git checkout <αρχείο>
+git remote -v
+```
-# Ακύρωση όλων των μη υποβληθεισών αλλαγών
-git checkout .
+**Εμφάνιση πληροφοριών απομακρυσμένου:**
+```bash
+git remote show
+```
-# Επαναφορά αρχείου σε συγκεκριμένη έκδοση
-git checkout <αρχείο>
+**Προσθήκη νέου απομακρυσμένου:**
+```bash
+git remote add
+```
-# Αφαίρεση αρχείου από την περιοχή staging
-git reset <αρχείο>
+**Μετονομασία απομακρυσμένου:**
+```bash
+git remote rename
+```
-# Αφαίρεση όλων των αρχείων από την περιοχή staging
-git reset
+**Αφαίρεση απομακρυσμένου:**
+```bash
+git remote rm
+```
+> ℹ️ **Σημείωση:** Αυτό αφαιρεί μόνο την τοπική αναφορά στο απομακρυσμένο, όχι το ίδιο το απομακρυσμένο αποθετήριο.
-# Επιστροφή στην προηγούμενη υποβολή (διατήρηση αλλαγών)
-git reset --soft HEAD~1
+### Fetch & Pull
-# Επιστροφή στην προηγούμενη υποβολή (ακύρωση αλλαγών)
-git reset --hard HEAD~1
+**Λήψη αλλαγών χωρίς συγχώνευση:**
+```bash
+git fetch
+```
-# Επιστροφή σε συγκεκριμένη υποβολή
-git reset --hard
+**Λήψη και συγχώνευση αλλαγών:**
+```bash
+git pull
+```
-# Δημιουργία υποβολής που ακυρώνει άλλη υποβολή
-git revert
+**Λήψη αλλαγών από τον κύριο κλάδο:**
+```bash
+git pull origin master
+```
-# Ακύρωση πολλαπλών υποβολών
-git revert ..
+**Pull με rebase:**
+```bash
+git pull --rebase
```
----
+### Push & Δημοσίευση
-## 📦 Αποθήκευση (Stash)
+**Δημοσίευση τοπικών αλλαγών:**
+```bash
+git push
+```
+
+**Διαγραφή απομακρυσμένου κλάδου:**
+```bash
+# Git v1.7.0+
+git push --delete
-### Προσωρινή αποθήκευση εργασίας:
+# Git v1.5.0+
+git push :
+```
+**Δημοσίευση ετικετών:**
```bash
-# Αποθήκευση τρεχουσών αλλαγών στο stash
-git stash
+git push --tags
+```
-# Αποθήκευση με περιγραφικό μήνυμα
-git stash save "Περιγραφικό μήνυμα"
+---
-# Προβολή όλων των stashes
-git stash list
+## 🔀 Συγχώνευση & Rebase
-# Εφαρμογή του τελευταίου stash
-git stash apply
+### Λειτουργίες Συγχώνευσης
-# Εφαρμογή συγκεκριμένου stash
-git stash apply stash@{0}
+**Συγχώνευση κλάδου στο τρέχον HEAD:**
+```bash
+git merge
+```
-# Εφαρμογή και διαγραφή του τελευταίου stash
-git stash pop
+**Ρύθμιση εργαλείου συγχώνευσης καθολικά:**
+```bash
+git config --global merge.tool meld
+```
-# Διαγραφή συγκεκριμένου stash
-git stash drop stash@{0}
+**Χρήση ρυθμισμένου εργαλείου συγχώνευσης:**
+```bash
+git mergetool
+```
-# Διαγραφή όλων των stashes
-git stash clear
+### Λειτουργίες Rebase
-# Προβολή αλλαγών σε stash
-git stash show stash@{0}
+> ⚠️ **Προσοχή:** Μην κάνετε rebase σε δημοσιευμένες υποβολές!
-# Δημιουργία κλάδου από stash
-git stash branch <όνομα-κλάδου> stash@{0}
+**Rebase τρέχοντος HEAD πάνω σε κλάδο:**
+```bash
+git rebase
```
----
+**Ακύρωση rebase:**
+```bash
+git rebase --abort
+```
-## 🌊 Git Flow
+**Συνέχιση rebase μετά την επίλυση συγκρούσεων:**
+```bash
+git rebase --continue
+```
-Το Git Flow είναι ένα μοντέλο διακλάδωσης που ορίζει μια αυστηρή ροή εργασίας σχεδιασμένη γύρω από την έκδοση του έργου.
+### Επίλυση Συγκρούσεων
-### Κύριοι κλάδοι:
-- **master/main**: Κώδικας παραγωγής
-- **develop**: Κύριος κλάδος ανάπτυξης
+**Σήμανση αρχείου ως επιλυμένου:**
+```bash
+git add
+```
-### Κλάδοι υποστήριξης:
-- **feature**: Για νέες λειτουργίες
-- **release**: Για προετοιμασία νέων εκδόσεων
-- **hotfix**: Για επείγουσες διορθώσεις στην παραγωγή
+**Αφαίρεση επιλυμένου αρχείου:**
+```bash
+git rm
+```
-### Εντολές Git Flow:
+### Συμπίεση Υποβολών
+**Διαδραστικό rebase για συμπίεση:**
```bash
-# Αρχικοποίηση git flow
-git flow init
+git rebase -i
+```
+
+**Παράδειγμα ρύθμισης συμπίεσης:**
+```
+# Πριν
+pick
+pick
+pick
+
+# Μετά (συμπίεση commit_id2 και commit_id3 στο commit_id)
+pick
+squash
+squash
+```
-# Έναρξη νέας λειτουργίας
-git flow feature start <όνομα-λειτουργίας>
+---
-# Ολοκλήρωση λειτουργίας
-git flow feature finish <όνομα-λειτουργίας>
+## ↩️ Αναίρεση
-# Δημοσίευση λειτουργίας
-git flow feature publish <όνομα-λειτουργίας>
+### Απόρριψη Αλλαγών
-# Έναρξη έκδοσης
-git flow release start <έκδοση>
+**Απόρριψη όλων των τοπικών αλλαγών:**
+```bash
+git reset --hard HEAD
+```
-# Ολοκλήρωση έκδοσης
-git flow release finish <έκδοση>
+**Αφαίρεση όλων των αρχείων από το staging:**
+```bash
+git reset HEAD
+```
+
+**Απόρριψη αλλαγών σε συγκεκριμένο αρχείο:**
+```bash
+git checkout HEAD
+```
-# Έναρξη hotfix
-git flow hotfix start <έκδοση>
+### Λειτουργίες Επαναφοράς
-# Ολοκλήρωση hotfix
-git flow hotfix finish <έκδοση>
+**Επαναφορά σε προηγούμενη υποβολή (απόρριψη όλων των αλλαγών):**
+```bash
+git reset --hard
```
-### Ροή εργασίας χωρίς Git Flow:
+**Επαναφορά στην κατάσταση απομακρυσμένου κλάδου:**
+```bash
+git reset --hard
+# Παράδειγμα: git reset --hard upstream/master
+```
-
+**Επαναφορά διατηρώντας αλλαγές ως unstaged:**
+```bash
+git reset
+```
+**Επαναφορά διατηρώντας μη υποβληθείσες τοπικές αλλαγές:**
```bash
-# Δημιουργία κλάδου λειτουργίας
-git checkout develop
-git checkout -b feature/νέα-λειτουργία
+git reset --keep
+```
-# Εργασία στη λειτουργία
-git add .
-git commit -m "Προσθήκη νέας λειτουργίας"
+### Αντιστροφή Υποβολών
-# Συγχώνευση λειτουργίας στο develop
-git checkout develop
-git merge --no-ff feature/νέα-λειτουργία
-git branch -d feature/νέα-λειτουργία
+**Αντιστροφή υποβολής (δημιουργία νέας υποβολής με αντίθετες αλλαγές):**
+```bash
+git revert
+```
-# Δημιουργία κλάδου έκδοσης
-git checkout develop
-git checkout -b release/1.0.0
+### Καθαρισμός Αγνοημένων Αρχείων
-# Ολοκλήρωση έκδοσης
-git checkout master
-git merge --no-ff release/1.0.0
-git tag -a 1.0.0 -m "Έκδοση 1.0.0"
-git checkout develop
-git merge --no-ff release/1.0.0
-git branch -d release/1.0.0
+**Αφαίρεση αρχείων που υποβλήθηκαν κατά λάθος και πρέπει να αγνοηθούν:**
+```bash
+git rm -r --cached .
+git add .
+git commit -m "remove ignored files"
```
---
-## 💡 Χρήσιμες Συμβουλές
+## 🌊 Git Flow
+
+**Βελτιωμένο Git-flow:** [git-flow-avh](https://github.com/petervanderdoes/gitflow-avh)
+
+### 📋 Πίνακας Περιεχομένων
+- [🔧 Ρύθμιση](#setup-1)
+- [🚀 Ξεκινώντας](#ξεκινώντας)
+- [✨ Λειτουργίες](#λειτουργίες)
+- [🎁 Δημιουργία Έκδοσης](#δημιουργία-έκδοσης)
+- [🔥 Hotfixes](#hotfixes)
+- [📊 Επισκόπηση Εντολών](#επισκόπηση-εντολών)
+
+---
+
+### 🔧 Ρύθμιση {#setup-1}
-### Χρήσιμα aliases:
+> **Προαπαιτούμενο:** Απαιτείται λειτουργική εγκατάσταση Git. Το Git-flow λειτουργεί σε macOS, Linux και Windows.
+**macOS (Homebrew):**
```bash
-# Ρύθμιση χρήσιμων aliases
-git config --global alias.st status
-git config --global alias.co checkout
-git config --global alias.br branch
-git config --global alias.ci commit
-git config --global alias.unstage 'reset HEAD --'
-git config --global alias.last 'log -1 HEAD'
-git config --global alias.visual '!gitk'
+brew install git-flow-avh
```
-### Αρχεία .gitignore:
+**macOS (MacPorts):**
+```bash
+port install git-flow
+```
+**Linux (βασισμένο σε Debian):**
```bash
-# Δημιουργία αρχείου .gitignore
-echo "node_modules/" >> .gitignore
-echo "*.log" >> .gitignore
-echo ".env" >> .gitignore
+sudo apt-get install git-flow
+```
-# Αγνόηση ήδη παρακολουθούμενων αρχείων
-git rm --cached <αρχείο>
-echo "<αρχείο>" >> .gitignore
-git add .gitignore
-git commit -m "Προσθήκη αρχείου στο .gitignore"
+**Windows (Cygwin):**
+> Απαιτεί wget και util-linux
+```bash
+wget -q -O - --no-check-certificate https://raw.githubusercontent.com/petervanderdoes/gitflow/develop/contrib/gitflow-installer.sh install | bash
```
---
-## ⚙️ Αρχεία Ρυθμίσεων
+### 🚀 Ξεκινώντας
-Το Git χρησιμοποιεί αρχεία ρυθμίσεων για την αποθήκευση προτιμήσεων χρήστη και αποθετηρίου:
+Το Git-flow χρειάζεται αρχικοποίηση για να προσαρμόσει τη ρύθμιση του έργου σας.
-### Επίπεδα ρυθμίσεων:
+**Αρχικοποίηση (διαδραστική):**
+```bash
+git flow init
+```
+> Θα απαντήσετε σε ερωτήσεις σχετικά με τις συμβάσεις ονομασίας κλάδων. Συνιστώνται οι προεπιλεγμένες τιμές.
+**Αρχικοποίηση (χρήση προεπιλογών):**
```bash
-# Συστήματος (όλοι οι χρήστες)
-git config --system
+git flow init -d
+```
-# Χρήστη (τρέχων χρήστης)
-git config --global
+---
-# Αποθετηρίου (συγκεκριμένο έργο)
-git config --local
-```
+### ✨ Λειτουργίες
-### Κοινές ρυθμίσεις:
+Οι λειτουργίες χρησιμοποιούνται για την ανάπτυξη νέας λειτουργικότητας για επερχόμενες εκδόσεις. Συνήθως υπάρχουν μόνο σε αποθετήρια προγραμματιστών.
+**Έναρξη νέας λειτουργίας:**
```bash
-# Ταυτότητα χρήστη
-git config --global user.name "Το Όνομά σας"
-git config --global user.email "email@example.com"
+git flow feature start MYFEATURE
+```
+> Δημιουργεί κλάδο λειτουργίας βασισμένο στο 'develop' και μεταβαίνει σε αυτόν
-# Επεξεργαστής κειμένου
-git config --global core.editor nano
+**Ολοκλήρωση λειτουργίας:**
+```bash
+git flow feature finish MYFEATURE
+```
+> Αυτό θα:
+> 1. Συγχωνεύσει το MYFEATURE στο 'develop'
+> 2. Αφαιρέσει τον κλάδο λειτουργίας
+> 3. Μεταβεί πίσω στο 'develop'
-# Εργαλείο συγχώνευσης
-git config --global merge.tool vimdiff
+**Δημοσίευση λειτουργίας (για συνεργασία):**
+```bash
+git flow feature publish MYFEATURE
+```
-# Χρώματα στην έξοδο
-git config --global color.ui auto
+**Λήψη δημοσιευμένης λειτουργίας:**
+```bash
+git flow feature pull origin MYFEATURE
+```
-# Προβολή ρυθμίσεων
-git config --list
+**Παρακολούθηση λειτουργίας origin:**
+```bash
+git flow feature track MYFEATURE
```
---
-## 🔍 Αναζήτηση
+### 🎁 Δημιουργία Έκδοσης
-### Αναζήτηση στο ιστορικό και περιεχόμενο:
+Οι εκδόσεις υποστηρίζουν την προετοιμασία νέων εκδόσεων παραγωγής, επιτρέποντας μικρές διορθώσεις σφαλμάτων και προετοιμασία μεταδεδομένων.
+**Έναρξη έκδοσης:**
```bash
-# Αναζήτηση στα μηνύματα υποβολών
-git log --grep="λέξη-κλειδί"
-
-# Αναζήτηση αλλαγών στον κώδικα
-git log -S "κομμάτι κώδικα"
-
-# Αναζήτηση σε αρχεία εργασίας
-git grep "μοτίβο"
-
-# Αναζήτηση σε συγκεκριμένη υποβολή
-git grep "μοτίβο"
+git flow release start RELEASE [BASE]
+```
+> Δημιουργεί κλάδο έκδοσης από το 'develop'. Προαιρετικά καθορίστε [BASE] commit SHA-1.
-# Αναζήτηση με αγνόηση πεζών/κεφαλαίων
-git grep -i "μοτίβο"
+**Δημοσίευση έκδοσης:**
+```bash
+git flow release publish RELEASE
+```
-# Αναζήτηση ολόκληρων λέξεων
-git grep -w "λέξη"
+**Παρακολούθηση απομακρυσμένης έκδοσης:**
+```bash
+git flow release track RELEASE
+```
-# Εμφάνιση αριθμών γραμμών
-git grep -n "μοτίβο"
+**Ολοκλήρωση έκδοσης:**
+```bash
+git flow release finish RELEASE
```
+> Αυτό θα:
+> 1. Συγχωνεύσει τον κλάδο έκδοσης στο 'master'
+> 2. Προσθέσει ετικέτα στην έκδοση
+> 3. Συγχωνεύσει ξανά την έκδοση στο 'develop'
+> 4. Αφαιρέσει τον κλάδο έκδοσης
+
+> 💡 **Μην ξεχάσετε:** Κάντε push τις ετικέτες σας με `git push --tags`
---
-## 📁 Μετακίνηση/Μετονομασία
+### 🔥 Hotfixes
-### Μετακίνηση και μετονομασία αρχείων:
+Τα hotfixes αντιμετωπίζουν κρίσιμα ζητήματα σε ζωντανές εκδόσεις παραγωγής. Διακλαδίζονται από την αντίστοιχη ετικέτα στο master.
+**Έναρξη hotfix:**
```bash
-# Μετονομασία αρχείου
-git mv παλιό_όνομα.txt νέο_όνομα.txt
+git flow hotfix start VERSION [BASENAME]
+```
-# Μετακίνηση αρχείου σε φάκελο
-git mv αρχείο.txt φάκελος/
+**Ολοκλήρωση hotfix:**
+```bash
+git flow hotfix finish VERSION
+```
+> Συγχωνεύεται πίσω τόσο στο 'develop' όσο και στο 'master', και προσθέτει ετικέτα στη συγχώνευση master
-# Μετονομασία φακέλου
-git mv παλιός_φάκελος νέος_φάκελος
+---
-# Διαδικασία μετονομασίας χωρίς git mv
-mv παλιό_όνομα.txt νέο_όνομα.txt
-git add νέο_όνομα.txt
-git rm παλιό_όνομα.txt
+### 📊 Επισκόπηση Εντολών
-# Εντοπισμός μετονομασιών στο log
-git log --follow αρχείο.txt
+
+
+
-# Παρακολούθηση μετακινήσεων
-git log --stat -M
-```
+### 🌊 Σχήμα Git Flow
+
+
+
+
---
+
## 🌍 Άλλες Γλώσσες
-Αυτό το Git cheat sheet είναι διαθέσιμο σε διάφορες γλώσσες:
+Αυτός ο σύντομος οδηγός είναι διαθέσιμος σε πολλές γλώσσες:
-| Γλώσσα | Αρχείο |
-|--------|---------|
-| 🇺🇸 English | [README.md](../README.md) |
-| 🇸🇦 العربية | [git-cheat-sheet-ar.md](git-cheat-sheet-ar.md) |
-| 🇧🇩 বাংলা | [git-cheat-sheet-bn.md](git-cheat-sheet-bn.md) |
-| 🇩🇪 Deutsch | [git-cheat-sheet-de.md](git-cheat-sheet-de.md) |
+| Γλώσσα | Σύνδεσμος |
+|----------|------|
+| 🇸🇦 Αραβικά | [git-cheat-sheet-ar.md](git-cheat-sheet-ar.md) |
+| 🇧🇩 Μπενγκάλι | [git-cheat-sheet-bn.md](git-cheat-sheet-bn.md) |
+| 🇧🇷 Βραζιλιάνικα Πορτογαλικά | [git-cheat-sheet-pt_BR.md](git-cheat-sheet-pt_BR.md) |
+| 🇨🇳 Κινέζικα | [git-cheat-sheet-zh.md](git-cheat-sheet-zh.md) |
+| 🇩🇪 Γερμανικά | [git-cheat-sheet-de.md](git-cheat-sheet-de.md) |
| 🇬🇷 **Ελληνικά** | [git-cheat-sheet-el.md](git-cheat-sheet-el.md) |
-| 🇪🇸 Español | [git-cheat-sheet-es.md](git-cheat-sheet-es.md) |
-| 🇮🇳 हिन्दी | [git-cheat-sheet-hi.md](git-cheat-sheet-hi.md) |
-| 🇰🇷 한국어 | [git-cheat-sheet-ko.md](git-cheat-sheet-ko.md) |
-| 🇵🇱 Polski | [git-cheat-sheet-pl.md](git-cheat-sheet-pl.md) |
-| 🇧🇷 Português (Brasil) | [git-cheat-sheet-pt_BR.md](git-cheat-sheet-pt_BR.md) |
-| 🇹🇷 Türkçe | [git-cheat-sheet-tr.md](git-cheat-sheet-tr.md) |
-| 🇨🇳 中文 | [git-cheat-sheet-zh.md](git-cheat-sheet-zh.md) |
+| 🇮🇳 Χίντι | [git-cheat-sheet-hi.md](git-cheat-sheet-hi.md) |
+| 🇰🇷 Κορεάτικα | [git-cheat-sheet-ko.md](git-cheat-sheet-ko.md) |
+| 🇵🇱 Πολωνικά | [git-cheat-sheet-pl.md](git-cheat-sheet-pl.md) |
+| 🇪🇸 Ισπανικά | [git-cheat-sheet-es.md](git-cheat-sheet-es.md) |
+| 🇹🇷 Τούρκικα | [git-cheat-sheet-tr.md](git-cheat-sheet-tr.md) |
---
## 🤝 Συνεισφορά
-Οι συνεισφορές είναι ευπρόσδεκτες! Αν θέλετε να βελτιώσετε αυτό το cheat sheet:
+Καλωσορίζουμε τις συνεισφορές! Μπορείτε να:
-1. Κάντε Fork το αποθετήριο
-2. Δημιουργήστε έναν κλάδο λειτουργίας (`git checkout -b feature/βελτίωση`)
-3. Κάντε commit τις αλλαγές σας (`git commit -am 'Προσθήκη νέας λειτουργίας'`)
-4. Κάντε Push στον κλάδο (`git push origin feature/βελτίωση`)
-5. Δημιουργήστε ένα Pull Request
+- 🐛 Αναφέρετε σφάλματα ή τυπογραφικά λάθη
+- ✨ Προσθέσετε νέες εντολές Git
+- 🌍 Μεταφράσετε σε νέες γλώσσες
+- 💡 Βελτιώσετε τις εξηγήσεις
+- 📝 Βελτιώσετε τη μορφοποίηση
-Παρακαλούμε ακολουθήστε τις οδηγίες συνεισφοράς και διασφαλίστε ότι ο κώδικάς σας ακολουθεί τα υπάρχοντα πρότυπα.
+**Πώς να συνεισφέρετε:**
+1. Κάντε Fork αυτό το αποθετήριο
+2. Δημιουργήστε τον κλάδο λειτουργίας σας (`git checkout -b feature/AmazingFeature`)
+3. Κάντε commit τις αλλαγές σας (`git commit -m 'Add some AmazingFeature'`)
+4. Κάντε push στον κλάδο (`git push origin feature/AmazingFeature`)
+5. Ανοίξτε ένα Pull Request
---
## 📄 Άδεια Χρήσης
-Αυτό το έργο αδειοδοτείται με την [MIT License](https://opensource.org/licenses/MIT).
-
-Μπορείτε ελεύθερα να χρησιμοποιήσετε, τροποποιήσετε και διανείμετε αυτό το cheat sheet σύμφωνα με τους όρους της άδειας MIT.
-
----
-
-## 📖 Επιπλέον Πόροι
-
-- [Επίσημη Τεκμηρίωση Git](https://git-scm.com/doc)
-- [Atlassian Git Tutorials](https://www.atlassian.com/git/tutorials)
-- [GitHub Git Cheat Sheet](https://education.github.com/git-cheat-sheet-education.pdf)
-- [Διαδραστικό Git Tutorial](https://learngitbranching.js.org/)
+Αυτό το έργο είναι ανοιχτού κώδικα και διαθέσιμο υπό την [Άδεια MIT](LICENSE).
---
-**Σημείωση**: Αυτό το cheat sheet καλύπτει τις πιο συνηθισμένες εντολές Git. Για πιο προχωρημένες χρήσεις, συμβουλευτείτε την επίσημη τεκμηρίωση του Git.
+
+ ⭐ Βάλτε αστέρι σε αυτό το αποθετήριο αν το βρήκατε χρήσιμο!
+
diff --git a/other-sheets/git-cheat-sheet-es.md b/other-sheets/git-cheat-sheet-es.md
index d318b2e..9c3ed99 100644
--- a/other-sheets/git-cheat-sheet-es.md
+++ b/other-sheets/git-cheat-sheet-es.md
@@ -1,680 +1,865 @@
-# Git Cheat Sheet Español
+# Hoja de Referencia de Git y Git Flow
+[](https://github.com/sindresorhus/awesome)
-
-
-Una guía de referencia rápida para los comandos de Git más utilizados, organizados por categorías para facilitar su consulta.
+
+
+
---
-## 📖 Acerca de esta Guía
+## 📖 Acerca de
-Esta guía completa de referencia de Git es un recurso integral para cualquiera que busque mejorar su flujo de trabajo con Git. Desde principiantes que comienzan su viaje con Git hasta desarrolladores experimentados, esta guía proporciona comandos organizados y categorizados para acelerar tu proceso de desarrollo.
+Esta completa hoja de referencia de Git te ayuda a dominar los comandos de Git sin memorizar todo. Ya seas principiante o un desarrollador experimentado, esta guía proporciona una referencia rápida a las operaciones esenciales de Git.
-### Características Principales:
-- **Categorías organizadas**: Los comandos están organizados en grupos claros y lógicos
-- **Ejemplos prácticos**: Con casos de uso del mundo real
-- **Amigable para principiantes**: Con explicaciones claras y consejos
-- **Referencia rápida**: Acceso rápido a comandos esenciales
+**¡Contribuciones bienvenidas!** Puedes:
+- Corregir errores gramaticales
+- Agregar nuevos comandos
+- Traducir a tu idioma
+- Mejorar las explicaciones
---
-
-## 📑 Tabla de Contenidos
-
-- [� Acerca de esta Guía](#acerca-de-esta-guía)
-- [�🔧 Configuración Inicial](#configuración-inicial)
-- [📁 Configuración de Repositorio](#configuración-de-repositorio)
-- [📊 Comandos de Estado](#comandos-de-estado)
-- [📝 Gestión de Archivos](#gestión-de-archivos)
-- [💾 Commits](#commits)
-- [🌿 Ramas (Branches)](#ramas-branches)
-- [🔀 Fusión (Merge)](#fusión-merge)
-- [🌐 Remotos](#remotos)
-- [📚 Historial y Logs](#historial-y-logs)
-- [🏷️ Etiquetas (Tags)](#etiquetas-tags)
-- [↩️ Deshacer Cambios](#deshacer-cambios)
-- [📦 Stash](#stash)
-- [🌊 Git Flow](#git-flow)
-- [⚙️ Archivos de Configuración](#archivos-de-configuración)
-- [🔍 Búsqueda](#búsqueda)
-- [📁 Mover/Renombrar](#moverrenombrar)
-- [💡 Consejos Útiles](#consejos-útiles)
-- [🌍 Otros Idiomas](#otros-idiomas)
-- [🤝 Contribuir](#contribuir)
-- [📄 Licencia](#licencia)
-- [📖 Recursos Adicionales](#recursos-adicionales)
+## 📋 Tabla de Contenidos
+
+- [🔧 Configuración](#-configuración)
+- [⚙️ Archivos de Configuración](#️-archivos-de-configuración)
+- [🆕 Crear Repositorio](#-crear-repositorio)
+- [📝 Cambios Locales](#-cambios-locales)
+- [🔍 Búsqueda](#-búsqueda)
+- [📖 Historial de Commits](#-historial-de-commits)
+- [📁 Mover / Renombrar](#-mover--renombrar)
+- [🌿 Ramas y Etiquetas](#-ramas-y-etiquetas)
+- [🔄 Actualizar y Publicar](#-actualizar-y-publicar)
+- [🔀 Fusionar y Rebase](#-fusionar-y-rebase)
+- [↩️ Deshacer](#️-deshacer)
+- [🌊 Git Flow](#-git-flow)
+- [🌍 Otros Idiomas](#-otros-idiomas)
---
-## 🔧 Configuración Inicial
+## 🔧 Configuración
-Configurar Git con tu información personal:
+### Ver Configuración
+**Mostrar la configuración actual:**
```bash
-# Configurar nombre de usuario
-git config --global user.name "Tu Nombre"
-
-# Configurar email
-git config --global user.email "tuemail@ejemplo.com"
-
-# Ver configuración actual
git config --list
+```
-# Configurar editor por defecto
-git config --global core.editor "nano"
+**Mostrar la configuración del repositorio:**
+```bash
+git config --local --list
+```
-# Configurar herramienta de diff
-git config --global merge.tool vimdiff
+**Mostrar la configuración global:**
+```bash
+git config --global --list
```
----
+**Mostrar la configuración del sistema:**
+```bash
+git config --system --list
+```
-## 📁 Configuración de Repositorio
+### Configuración de Usuario
-### Inicializar un nuevo repositorio:
+**Establecer tu nombre para el historial de versiones:**
+```bash
+git config --global user.name "[firstname lastname]"
+```
+**Establecer tu dirección de correo electrónico:**
```bash
-# Crear un nuevo repositorio Git
-git init
+git config --global user.email "[valid-email]"
+```
-# Clonar un repositorio existente
-git clone
+### Configuración de Pantalla y Editor
-# Clonar a un directorio específico
-git clone
+**Habilitar el coloreado automático en la línea de comandos:**
+```bash
+git config --global color.ui auto
```
----
-
-## 📊 Comandos de Estado
+**Establecer el editor global para commits:**
+```bash
+git config --global core.editor vi
+```
-### Verificar el estado de tu repositorio:
+---
-```bash
-# Mostrar estado actual del repositorio
-git status
+## ⚙️ Archivos de Configuración
-# Mostrar estado en formato corto
-git status -s
+| Alcance | Ubicación | Flag de Comando |
+|---------|-----------|-----------------|
+| **Repositorio** | `/.git/config` | `--local` |
+| **Usuario** | `~/.gitconfig` | `--global` |
+| **Sistema** | `/etc/gitconfig` | `--system` |
-# Mostrar estado ignorando archivos no rastreados
-git status --ignored
+---
-# Mostrar diferencias en archivos modificados
-git diff
+## 🆕 Crear Repositorio
-# Mostrar diferencias en el área de preparación
-git diff --staged
+### Clonar Repositorio Existente
-# Mostrar diferencias entre ramas
-git diff
+**Vía SSH:**
+```bash
+git clone ssh://user@domain.com/repo.git
```
----
-
-## 📝 Gestión de Archivos
+**Vía HTTPS:**
+```bash
+git clone https://domain.com/user/repo.git
+```
-### Agregar y remover archivos:
+### Inicializar Nuevo Repositorio
+**Crear repositorio en el directorio actual:**
```bash
-# Agregar archivo específico al área de preparación
-git add
+git init
+```
-# Agregar todos los archivos modificados
-git add .
+**Crear repositorio en un directorio específico:**
+```bash
+git init
+```
-# Agregar todos los archivos de un tipo específico
-git add *.txt
+---
-# Agregar interactivamente
-git add -i
+## 📝 Cambios Locales
-# Remover archivo del repositorio y del directorio de trabajo
-git rm
+### Verificar Estado y Diferencias
-# Remover archivo solo del repositorio (mantener en directorio)
-git rm --cached
+**Ver el estado del directorio de trabajo:**
+```bash
+git status
+```
-# Mover/renombrar archivo
-git mv
+**Mostrar cambios en archivos rastreados:**
+```bash
+git diff
```
----
+**Mostrar cambios en un archivo específico:**
+```bash
+git diff
+```
-## 💾 Commits
+### Preparar Cambios (Staging)
-### Guardar cambios en el repositorio:
+**Agregar todos los cambios actuales:**
+```bash
+git add .
+```
+**Agregar archivos específicos:**
```bash
-# Hacer commit con mensaje
-git commit -m "Mensaje del commit"
+git add
+```
-# Hacer commit agregando todos los archivos modificados
-git commit -am "Mensaje del commit"
+**Agregar partes de un archivo de forma interactiva:**
+```bash
+git add -p
+```
-# Modificar el último commit
-git commit --amend
+### Confirmar Cambios (Commits)
-# Hacer commit vacío (útil para triggers de CI/CD)
-git commit --allow-empty -m "Trigger CI"
+**Confirmar todos los cambios en archivos rastreados:**
+```bash
+git commit -a
+```
-# Hacer commit con mensaje detallado (abre editor)
+**Confirmar los cambios preparados:**
+```bash
git commit
```
----
-
-## 🌿 Ramas (Branches)
+**Confirmar con un mensaje:**
+```bash
+git commit -m 'message here'
+```
-### Trabajar con ramas:
+**Saltar el staging y confirmar con un mensaje:**
+```bash
+git commit -am 'message here'
+```
+**Confirmar con una fecha específica:**
```bash
-# Listar todas las ramas
-git branch
+git commit --date="`date --date='n day ago'`" -am ""
+```
-# Listar ramas remotas
-git branch -r
+### Modificar Último Commit
-# Listar todas las ramas (locales y remotas)
-git branch -a
+> ⚠️ **Advertencia:** ¡No modifiques commits ya publicados!
+
+**Modificar el último commit:**
+```bash
+git commit -a --amend
+```
-# Crear nueva rama
-git branch
+**Modificar sin cambiar el mensaje del commit:**
+```bash
+git commit --amend --no-edit
+```
+
+**Cambiar la fecha del committer:**
+```bash
+GIT_COMMITTER_DATE="date" git commit --amend
+```
-# Cambiar a una rama
-git checkout
+**Cambiar la fecha del autor:**
+```bash
+git commit --amend --date="date"
+```
-# Crear y cambiar a nueva rama
-git checkout -b
+### Guardar Cambios Temporalmente (Stash)
-# Crear rama desde un commit específico
-git checkout -b
+**Guardar los cambios actuales temporalmente:**
+```bash
+git stash
+```
-# Eliminar rama
-git branch -d
+**Aplicar los últimos cambios guardados:**
+```bash
+git stash apply
+```
-# Eliminar rama forzadamente
-git branch -D
+**Aplicar un stash específico:**
+```bash
+git stash apply stash@{stash_number}
+```
+> Usa `git stash list` para ver los stashes disponibles
-# Renombrar rama actual
-git branch -m
+**Eliminar el último stash:**
+```bash
+git stash drop
+```
-# Renombrar rama específica
-git branch -m
+**Mover cambios no confirmados a otra rama:**
+```bash
+git stash
+git checkout branch2
+git stash pop
```
---
-## 🔀 Fusión (Merge)
+## 🔍 Búsqueda
-### Fusionar cambios entre ramas:
+### Búsqueda de Texto
+**Buscar texto en todos los archivos:**
```bash
-# Fusionar rama en la rama actual
-git merge
+git grep "Hello"
+```
-# Fusionar sin fast-forward (crear commit de merge)
-git merge --no-ff
+**Buscar en una versión específica:**
+```bash
+git grep "Hello" v2.5
+```
-# Fusionar solo si es fast-forward
-git merge --ff-only
+### Búsqueda en Commits
-# Abortar fusión en curso
-git merge --abort
+**Encontrar commits que introdujeron una palabra clave específica:**
+```bash
+git log -S 'keyword'
+```
-# Continuar fusión después de resolver conflictos
-git merge --continue
+**Buscar con expresión regular:**
+```bash
+git log -S 'keyword' --pickaxe-regex
```
---
-## 🌐 Remotos
+## 📖 Historial de Commits
-### Gestionar repositorios remotos:
+### Historial Básico
+**Mostrar todos los commits (detallado):**
```bash
-# Listar repositorios remotos
-git remote
+git log
+```
-# Listar repositorios remotos con URLs
-git remote -v
+**Mostrar commits (una línea cada uno):**
+```bash
+git log --oneline
+```
-# Agregar repositorio remoto
-git remote add
+**Mostrar commits de un autor específico:**
+```bash
+git log --author="username"
+```
-# Cambiar URL de repositorio remoto
-git remote set-url
+**Mostrar cambios de un archivo específico:**
+```bash
+git log -p
+```
+
+### Historial Avanzado
-# Eliminar repositorio remoto
-git remote remove
+**Comparar ramas:**
+```bash
+git log --oneline .. --left-right
+```
-# Subir cambios al repositorio remoto
-git push
+**Mostrar quién cambió qué y cuándo:**
+```bash
+git blame
+```
-# Subir rama y establecer tracking
-git push -u
+### Logs de Referencia
-# Subir todas las ramas
-git push --all
+**Mostrar el log de referencia:**
+```bash
+git reflog show
+```
-# Subir etiquetas
-git push --tags
+**Eliminar el log de referencia:**
+```bash
+git reflog delete
+```
-# Descargar cambios del repositorio remoto
-git pull
+---
-# Descargar cambios sin fusionar
-git fetch
+## 📁 Mover / Renombrar
-# Descargar todas las ramas remotas
-git fetch --all
+**Renombrar un archivo:**
+```bash
+git mv Index.txt Index.html
```
---
-## 📚 Historial y Logs
+## 🌿 Ramas y Etiquetas
-### Explorar el historial de commits:
+### Listar Ramas
+**Listar ramas locales:**
```bash
-# Mostrar historial de commits
-git log
+git branch
+```
-# Mostrar historial en una línea por commit
-git log --oneline
+**Listar todas las ramas (locales + remotas):**
+```bash
+git branch -a
+```
-# Mostrar historial con gráfico
-git log --graph
+**Listar ramas remotas:**
+```bash
+git branch -r
+```
-# Mostrar historial de un archivo específico
-git log