Skip to content

Latest commit

 

History

History
680 lines (465 loc) · 24.3 KB

File metadata and controls

680 lines (465 loc) · 24.3 KB

Git Cheat Sheet हिन्दी

Git Logo

सबसे अधिक उपयोग किए जाने वाले Git कमांड का एक त्वरित संदर्भ गाइड, आसान उपयोग के लिए श्रेणियों में व्यवस्थित।


📖 इस गाइड के बारे में

यह व्यापक Git संदर्भ गाइड उन सभी के लिए एक संपूर्ण संसाधन है जो Git के साथ अपने वर्कफ़्लो को बेहतर बनाना चाहते हैं। Git के साथ अपनी यात्रा शुरू करने वाले शुरुआती लोगों से लेकर अनुभवी डेवलपर्स तक, यह गाइड आपकी विकास यात्रा को तेज़ करने के लिए व्यवस्थित और वर्गीकृत कमांड प्रदान करता है।

मुख्य विशेषताएं:

  • व्यवस्थित श्रेणियां: कमांड स्पष्ट और तर्कसंगत समूहों में व्यवस्थित हैं
  • व्यावहारिक उदाहरण: वास्तविक दुनिया के उपयोग के मामलों के साथ
  • शुरुआती-अनुकूल: स्पष्ट व्याख्या और सुझावों के साथ
  • त्वरित संदर्भ: आवश्यक कमांड तक त्वरित पहुंच

📑 विषय सूची


🔧 प्रारंभिक सेटअप

अपनी व्यक्तिगत जानकारी के साथ Git कॉन्फ़िगर करें:

# उपयोगकर्ता नाम सेट करें
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

⚙️ कॉन्फ़िगरेशन फ़ाइलें

Git उपयोगकर्ता और रिपॉजिटरी प्राथमिकताएं संग्रहीत करने के लिए कॉन्फ़िगरेशन फ़ाइलों का उपयोग करता है:

कॉन्फ़िगरेशन स्तर:

# सिस्टम (सभी उपयोगकर्ता)
git config --system

# उपयोगकर्ता (वर्तमान उपयोगकर्ता)
git config --global

# रिपॉजिटरी (विशिष्ट प्रोजेक्ट)
git config --local

सामान्य कॉन्फ़िगरेशन:

# उपयोगकर्ता पहचान
git config --global user.name "आपका नाम"
git config --global user.email "email@example.com"

# टेक्स्ट एडिटर
git config --global core.editor nano

# मर्ज टूल
git config --global merge.tool vimdiff

# आउटपुट में रंग
git config --global color.ui auto

# कॉन्फ़िगरेशन देखें
git config --list

📁 रिपॉजिटरी सेटअप

नई रिपॉजिटरी बनाएं:

# नई Git रिपॉजिटरी बनाएं
git init

# मौजूदा रिपॉजिटरी को क्लोन करें
git clone <रिपॉजिटरी-url>

# विशिष्ट डायरेक्टरी में क्लोन करें
git clone <रिपॉजिटरी-url> <डायरेक्टरी-नाम>

📊 स्थिति कमांड

अपनी रिपॉजिटरी की स्थिति जांचें:

# रिपॉजिटरी की वर्तमान स्थिति दिखाएं
git status

# संक्षिप्त प्रारूप में स्थिति दिखाएं
git status -s

# अनट्रैक की गई फ़ाइलों को अनदेखा करके स्थिति दिखाएं
git status --ignored

# संशोधित फ़ाइलों में अंतर दिखाएं
git diff

# स्टेजिंग क्षेत्र में अंतर दिखाएं
git diff --staged

# ब्रांच के बीच अंतर दिखाएं
git diff <ब्रांच1> <ब्रांच2>

📝 फ़ाइल प्रबंधन

फ़ाइलें जोड़ना और हटाना:

# विशिष्ट फ़ाइल को स्टेजिंग क्षेत्र में जोड़ें
git add <फ़ाइल>

# सभी संशोधित फ़ाइलें जोड़ें
git add .

# विशिष्ट प्रकार की सभी फ़ाइलें जोड़ें
git add *.txt

# इंटरैक्टिव रूप से जोड़ें
git add -i

# रिपॉजिटरी और कार्य डायरेक्टरी से फ़ाइल हटाएं
git rm <फ़ाइल>

# केवल रिपॉजिटरी से फ़ाइल हटाएं (डायरेक्टरी में रखें)
git rm --cached <फ़ाइल>

# फ़ाइल स्थानांतरित/नाम बदलें
git mv <स्रोत-फ़ाइल> <गंतव्य-फ़ाइल>

💾 कमिट

रिपॉजिटरी में परिवर्तन सहेजें:

# संदेश के साथ कमिट करें
git commit -m "कमिट संदेश"

# सभी संशोधित फ़ाइलें जोड़कर कमिट करें
git commit -am "कमिट संदेश"

# अंतिम कमिट को संशोधित करें
git commit --amend

# खाली कमिट करें (CI/CD ट्रिगर के लिए उपयोगी)
git commit --allow-empty -m "CI ट्रिगर"

# विस्तृत संदेश के साथ कमिट करें (एडिटर खुलेगा)
git commit

🌿 ब्रांच

ब्रांच के साथ काम करना:

# सभी ब्रांच दिखाएं
git branch

# रिमोट ब्रांच दिखाएं
git branch -r

# सभी ब्रांच दिखाएं (स्थानीय और रिमोट)
git branch -a

# नई ब्रांच बनाएं
git branch <ब्रांच-नाम>

# ब्रांच पर स्विच करें
git checkout <ब्रांच-नाम>

# नई ब्रांच बनाकर स्विच करें
git checkout -b <ब्रांच-नाम>

# विशिष्ट कमिट से ब्रांच बनाएं
git checkout -b <ब्रांच-नाम> <कमिट-हैश>

# ब्रांच हटाएं
git branch -d <ब्रांच-नाम>

# जबरदस्ती ब्रांच हटाएं
git branch -D <ब्रांच-नाम>

# वर्तमान ब्रांच का नाम बदलें
git branch -m <नया-नाम>

# विशिष्ट ब्रांच का नाम बदलें
git branch -m <पुराना-नाम> <नया-नाम>

🔀 मर्ज

ब्रांच के बीच परिवर्तन मर्ज करना:

# वर्तमान ब्रांच में अन्य ब्रांच मर्ज करें
git merge <ब्रांच-नाम>

# फास्ट-फॉरवर्ड के बिना मर्ज करें (मर्ज कमिट बनाएं)
git merge --no-ff <ब्रांच-नाम>

# केवल फास्ट-फॉरवर्ड होने पर मर्ज करें
git merge --ff-only <ब्रांच-नाम>

# चालू मर्ज को रद्द करें
git merge --abort

# संघर्ष समाधान के बाद मर्ज जारी रखें
git merge --continue

🌐 रिमोट रिपॉजिटरी

रिमोट रिपॉजिटरी प्रबंधन:

# रिमोट रिपॉजिटरी दिखाएं
git remote

# URL के साथ रिमोट रिपॉजिटरी दिखाएं
git remote -v

# रिमोट रिपॉजिटरी जोड़ें
git remote add <नाम> <url>

# रिमोट रिपॉजिटरी URL बदलें
git remote set-url <नाम> <नया-url>

# रिमोट रिपॉजिटरी हटाएं
git remote remove <नाम>

# रिमोट रिपॉजिटरी में परिवर्तन पुश करें
git push <रिमोट> <ब्रांच>

# ब्रांच पुश करके ट्रैकिंग सेट करें
git push -u <रिमोट> <ब्रांच>

# सभी ब्रांच पुश करें
git push --all

# टैग पुश करें
git push --tags

# रिमोट रिपॉजिटरी से परिवर्तन डाउनलोड करें
git pull <रिमोट> <ब्रांच>

# मर्ज के बिना परिवर्तन डाउनलोड करें
git fetch <रिमोट>

# सभी रिमोट ब्रांच डाउनलोड करें
git fetch --all

📚 इतिहास और लॉग

कमिट इतिहास का अन्वेषण:

# कमिट इतिहास दिखाएं
git log

# प्रति कमिट एक लाइन में इतिहास दिखाएं
git log --oneline

# ग्राफ के साथ इतिहास दिखाएं
git log --graph

# विशिष्ट फ़ाइल का इतिहास दिखाएं
git log <फ़ाइल>

# कमिट आंकड़े दिखाएं
git log --stat

# प्रत्येक कमिट में परिवर्तन दिखाएं
git log -p

# अंतिम N कमिट दिखाएं
git log -n <संख्या>

# तारीखों के बीच कमिट दिखाएं
git log --since="2023-01-01" --until="2023-12-31"

# लेखक के अनुसार कमिट दिखाएं
git log --author="लेखक का नाम"

# कमिट संदेश में खोजें
git log --grep="कीवर्ड"

🔍 खोज

इतिहास और सामग्री में खोज:

# कमिट संदेशों में खोजें
git log --grep="कीवर्ड"

# कोड में परिवर्तनों को खोजें
git log -S "कोड का हिस्सा"

# कार्य फ़ाइलों में खोजें
git grep "पैटर्न"

# विशिष्ट कमिट में खोजें
git grep "पैटर्न" <कमिट-हैश>

# केस को अनदेखा करके खोजें
git grep -i "पैटर्न"

# पूरे शब्द खोजें
git grep -w "शब्द"

# लाइन नंबर दिखाएं
git grep -n "पैटर्न"

📁 स्थानांतरित/नाम बदलें

फ़ाइल स्थानांतरित और नाम बदलना:

# फ़ाइल का नाम बदलें
git mv पुराना_नाम.txt नया_नाम.txt

# फ़ाइल को फ़ोल्डर में स्थानांतरित करें
git mv फ़ाइल.txt फ़ोल्डर/

# फ़ोल्डर का नाम बदलें
git mv पुराना_फ़ोल्डर नया_फ़ोल्डर

# git mv के बिना नाम बदलने की प्रक्रिया
mv पुराना_नाम.txt नया_नाम.txt
git add नया_नाम.txt
git rm पुराना_नाम.txt

# लॉग में नाम बदलाव खोजें
git log --follow फ़ाइल.txt

# स्थानांतरण ट्रैक करें
git log --stat -M

🏷️ टैग

संस्करण टैग प्रबंधन:

# सभी टैग दिखाएं
git tag

# हल्का टैग बनाएं
git tag <टैग-नाम>

# एनोटेटेड टैग बनाएं
git tag -a <टैग-नाम> -m "टैग संदेश"

# विशिष्ट कमिट पर टैग बनाएं
git tag -a <टैग-नाम> <कमिट-हैश>

# टैग की जानकारी दिखाएं
git show <टैग-नाम>

# स्थानीय टैग हटाएं
git tag -d <टैग-नाम>

# रिमोट टैग हटाएं
git push --delete <रिमोट> <टैग-नाम>

# विशिष्ट टैग पुश करें
git push <रिमोट> <टैग-नाम>

# सभी टैग पुश करें
git push <रिमोट> --tags

↩️ परिवर्तन पूर्ववत करना

संशोधन वापस करना:

# विशिष्ट फ़ाइल में परिवर्तन रद्द करें
git checkout <फ़ाइल>

# सभी गैर-कमिट किए गए परिवर्तन रद्द करें
git checkout .

# विशिष्ट संस्करण में फ़ाइल वापस करें
git checkout <कमिट-हैश> <फ़ाइल>

# स्टेजिंग क्षेत्र से फ़ाइल हटाएं
git reset <फ़ाइल>

# स्टेजिंग क्षेत्र से सभी फ़ाइलें हटाएं
git reset

# पिछले कमिट पर वापस जाएं (परिवर्तन रखें)
git reset --soft HEAD~1

# पिछले कमिट पर वापस जाएं (परिवर्तन रद्द करें)
git reset --hard HEAD~1

# विशिष्ट कमिट पर वापस जाएं
git reset --hard <कमिट-हैश>

# दूसरे कमिट को रद्द करने वाला नया कमिट बनाएं
git revert <कमिट-हैश>

# कई कमिट रद्द करें
git revert <हैश-से>..<हैश-तक>

📦 स्टैश

अस्थायी रूप से काम सहेजना:

# वर्तमान परिवर्तन स्टैश में सहेजें
git stash

# वर्णनात्मक संदेश के साथ सहेजें
git stash save "वर्णनात्मक संदेश"

# सभी स्टैश दिखाएं
git stash list

# अंतिम स्टैश लागू करें
git stash apply

# विशिष्ट स्टैश लागू करें
git stash apply stash@{0}

# अंतिम स्टैश लागू करके हटाएं
git stash pop

# विशिष्ट स्टैश हटाएं
git stash drop stash@{0}

# सभी स्टैश हटाएं
git stash clear

# स्टैश में परिवर्तन दिखाएं
git stash show stash@{0}

# स्टैश से ब्रांच बनाएं
git stash branch <ब्रांच-नाम> stash@{0}

🌊 Git Flow

Git Flow एक ब्रांचिंग मॉडल है जो प्रोजेक्ट रिलीज के चारों ओर डिज़ाइन किए गए सख्त वर्कफ़्लो को परिभाषित करता है।

मुख्य ब्रांच:

  • master/main: प्रोडक्शन कोड
  • develop: मुख्य डेवलपमेंट ब्रांच

सहायक ब्रांच:

  • feature: नई सुविधाओं के लिए
  • release: नए संस्करणों की तैयारी के लिए
  • hotfix: प्रोडक्शन में तत्काल सुधार के लिए

Git Flow कमांड:

# git flow शुरू करें
git flow init

# नई सुविधा शुरू करें
git flow feature start <सुविधा-नाम>

# सुविधा समाप्त करें
git flow feature finish <सुविधा-नाम>

# सुविधा प्रकाशित करें
git flow feature publish <सुविधा-नाम>

# रिलीज शुरू करें
git flow release start <संस्करण>

# रिलीज समाप्त करें
git flow release finish <संस्करण>

# हॉटफिक्स शुरू करें
git flow hotfix start <संस्करण>

# हॉटफिक्स समाप्त करें
git flow hotfix finish <संस्करण>

Git Flow के बिना वर्कफ़्लो:

Git Flow Commands

# सुविधा ब्रांच बनाएं
git checkout develop
git checkout -b feature/नई-सुविधा

# सुविधा पर काम करें
git add .
git commit -m "नई सुविधा जोड़ें"

# develop में सुविधा मर्ज करें
git checkout develop
git merge --no-ff feature/नई-सुविधा
git branch -d feature/नई-सुविधा

# रिलीज ब्रांच बनाएं
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

💡 उपयोगी सुझाव

उपयोगी उपनाम:

# उपयोगी उपनाम सेट करें
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 फ़ाइलें:

# .gitignore फ़ाइल बनाएं
echo "node_modules/" >> .gitignore
echo "*.log" >> .gitignore
echo ".env" >> .gitignore

# पहले से ट्रैक की गई फ़ाइलों को अनदेखा करें
git rm --cached <फ़ाइल>
echo "<फ़ाइल>" >> .gitignore
git add .gitignore
git commit -m ".gitignore में फ़ाइल जोड़ें"

🌍 अन्य भाषाएं

यह Git चीट शीट निम्नलिखित भाषाओं में उपलब्ध है:


🤝 योगदान

हम योगदान का स्वागत करते हैं! इस परियोजना को बेहतर बनाने में मदद करने के लिए:

  1. मुद्दे रिपोर्ट करें: गलतियां या सुधार के सुझाव साझा करें
  2. नई भाषाएं जोड़ें: अनुवाद बनाएं या मौजूदा को बेहतर बनाएं
  3. सामग्री सुधारें: नए कमांड, उदाहरण या व्याख्याएं जोड़ें
  4. प्रतिक्रिया दें: आपके अनुभव और सुझाव साझा करें

योगदान करने के लिए:


📄 लाइसेंस

यह परियोजना MIT लाइसेंस के तहत लाइसेंसीकृत है। अधिक विवरण के लिए LICENSE फ़ाइल देखें।


📖 अतिरिक्त संसाधन


⭐ अगर यह चीट शीट उपयोगी है तो इसे स्टार करें!
Git के साथ हैप्पी कोडिंग! 🚀