Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह · पाठ

स्क्रिप्ट से Git कार्यों का स्वचालन

दोहराए जाने वाले Git कार्यों को स्वचालित करने के लिए कस्टम स्क्रिप्ट लिखें, दक्षता बढ़ाएँ और मैन्युअल त्रुटियाँ घटाएँ।

पाठ 2, कुल 4 में से11 चरण

स्क्रिप्ट से Git कार्यों का स्वचालन, CoddyKit पर Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

Git कार्यों को स्वचालित क्यों करें?

Git कमांड को मैन्युअल रूप से चलाना दोहरावपूर्ण हो सकता है और इसमें मानवीय त्रुटियाँ होने की संभावना रहती है, विशेषकर जटिल कार्यप्रवाहों में।

इन कार्यों को स्क्रिप्ट से स्वचालित करने पर एकरूपता सुनिश्चित करने, समय बचाने और पूरी टीम में गलतियों की संभावना घटाने में सहायता मिलती है।

  • एकरूपता: कमिट, शाखाओं आदि के लिए टीम के मानक लागू करें।
  • दक्षता: एक ही कमांड से Git के अनेक संचालन करें।
  • विश्वसनीयता: मैन्युअल इनपुट से होने वाली त्रुटियाँ घटाएँ।

आपकी पहली Git स्क्रिप्ट

शेल स्क्रिप्ट साधारण टेक्स्ट फ़ाइलें होती हैं, जिनमें ऐसे कमांड होते हैं जिन्हें शेल (जैसे Bash) चला सकता है। हम git status चलाने वाली एक मूल स्क्रिप्ट से शुरुआत करेंगे।

किसी स्क्रिप्ट को निष्पादन योग्य बनाने के लिए आपको chmod +x your_script.sh का उपयोग करना होगा।

#!/bin/bash

# This is a comment
echo "--- Running Git Status ---"
git status
echo "-------------------------"

स्टेजिंग बदलावों को स्वचालित करना

Git का एक सामान्य कार्य कमिट करने से पहले सभी संशोधित या ट्रैक न की गई फ़ाइलों को स्टेज करना है। हर बार git add . टाइप करने के बजाय, आप इसे एक स्क्रिप्ट में रख सकते हैं।

यह स्क्रिप्ट आपकी वर्तमान डायरेक्टरी में हुए सभी बदलावों को स्वचालित रूप से स्टेज करेगी।

#!/bin/bash

echo "Staging all changes..."
git add .
echo "All changes staged!"

कस्टम कमिट संदेश सहायक

प्रोजेक्ट के इतिहास के लिए एकरूप कमिट संदेश बनाए रखना अत्यंत महत्वपूर्ण है। आप ऐसी स्क्रिप्ट बना सकते हैं जो कमिट संदेश के विशिष्ट भागों के लिए इनपुट माँगे और यह सुनिश्चित करे कि सभी लोग एक ही प्रारूप का पालन करें।

यह उदाहरण समय-मुहर के साथ एक कमिट बनाता है।

#!/bin/bash

TIMESTAMP=$(date +"%Y-%m-%d %H:%M:%S")

git add .
git commit -m "Automated save: $TIMESTAMP"
echo "Changes committed with timestamp!"

आर्ग्यूमेंट वाली स्क्रिप्ट

अपनी स्क्रिप्ट को अधिक लचीला बनाने के लिए आप उन्हें आर्ग्यूमेंट दे सकते हैं। इन आर्ग्यूमेंट को स्क्रिप्ट के भीतर $1 जैसे विशेष वेरिएबल से प्राप्त किया जा सकता है, जहाँ $1 पहला आर्ग्यूमेंट, $2 दूसरा आर्ग्यूमेंट आदि दर्शाता है।

यह स्क्रिप्ट आर्ग्यूमेंट के रूप में निर्दिष्ट शाखा को चेक आउट करती है।

#!/bin/bash

BRANCH_NAME="$1"

if [ -z "$BRANCH_NAME" ]; then
  echo "Usage: ./checkout_branch.sh <branch_name>"
  exit 1
fi

git checkout "$BRANCH_NAME"
echo "Switched to branch: $BRANCH_NAME"

मर्ज की गई शाखाओं की स्वचालित सफ़ाई

फ़ीचर शाखाओं को मर्ज करने के बाद वे अक्सर स्थानीय रूप से बनी रहती हैं। एक स्क्रिप्ट नवीनतम बदलाव स्वचालित रूप से प्राप्त करने, रिमोट-ट्रैकिंग शाखाओं को हटाने और आपकी वर्तमान शाखा में मर्ज की गई स्थानीय शाखाओं की सूची बनाने में सहायता कर सकती है (जैसे, main या master)।

सावधान: हटाने से पहले सूचीबद्ध शाखाओं की समीक्षा करें!

#!/bin/bash

echo "Fetching latest and pruning..."
git fetch --prune

CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)

echo "Looking for branches merged into '$CURRENT_BRANCH' (excluding main/master)..."
MERGED_BRANCHES=$(git branch --merged | grep -v \* | grep -v main | grep -v master)

if [ -z "$MERGED_BRANCHES" ]; then
  echo "No merged branches to delete."
else
  echo "Found these merged branches:
$MERGED_BRANCHES"
  echo "To delete them, run: echo \"$MERGED_BRANCHES\" | xargs git branch -d"
fi

Git स्थिति के साथ सशर्त तर्क

आप अपनी स्क्रिप्ट में निर्णय लेने के लिए Git कमांड के आउटपुट का उपयोग कर सकते हैं। git status --porcelain मशीन द्वारा पढ़े जा सकने वाला प्रारूप देता है, जो स्क्रिप्ट लिखने के लिए बहुत उपयोगी है।

यह स्क्रिप्ट आगे बढ़ने से पहले जाँचती है कि आपकी कार्यशील डायरेक्टरी साफ़ है या नहीं।

#!/bin/bash

STATUS=$(git status --porcelain)

if [ -z "$STATUS" ]; then
  echo "Working directory is clean. You're good to go!"
else
  echo "Warning: Uncommitted changes detected."
  echo "$STATUS"
  # You might add an 'exit 1' here to stop the script
fi

Git उपनामों के साथ स्क्रिप्ट का एकीकरण

Git उपनाम आपको Git कमांड के लिए शॉर्टकट बनाने देते हैं। आप इनका उपयोग अपनी कस्टम स्क्रिप्ट चलाने के लिए भी कर सकते हैं, जिससे वे मूल Git कमांड जैसी लगती हैं।

इन्हें अपनी ~/.gitconfig फ़ाइल में जोड़ें:

  • [alias]
  • clean = "!/path/to/your/cleanup_script.sh"
  • # The '!' tells Git to execute the command in a shell

अब अपनी स्क्रिप्ट चलाने के लिए आप केवल git clean टाइप कर सकते हैं!

[alias]
  st = status -sb
  co = checkout
  cm = commit -m
  # Run a custom script:
  my-auto-commit = "!/path/to/your/auto_commit_script.sh"

स्मार्ट शाखा प्रबंधन स्क्रिप्ट

सशर्त तर्क को Git कमांड के साथ मिलाने पर अधिक बुद्धिमान स्वचालन संभव होता है। उदाहरण के लिए, कोई स्क्रिप्ट शाखा बनाने या चेक आउट करने का प्रयास करने से पहले जाँच सकती है कि वह शाखा पहले से मौजूद है या नहीं।

इससे त्रुटियाँ रुकती हैं और आपका शाखा कार्यप्रवाह सरल हो जाता है।

#!/bin/bash

TARGET_BRANCH="feature/new-dashboard"

# Check if the branch exists locally
if git show-ref --verify --quiet refs/heads/$TARGET_BRANCH; then
  echo "Branch '$TARGET_BRANCH' exists. Checking it out."
  git checkout $TARGET_BRANCH
else
  echo "Branch '$TARGET_BRANCH' does not exist. Creating it."
  git checkout -b $TARGET_BRANCH
fi

अपना ज्ञान जाँचें

Git कार्यों के स्वचालन की अपनी समझ जाँचें।

पुनरावलोकन: दक्षता के लिए स्वचालन

इस पाठ में आपने सीखा कि विभिन्न Git कार्यों को स्वचालित करने के लिए शेल स्क्रिप्टिंग का लाभ कैसे उठाया जाता है। कस्टम स्क्रिप्ट लिखकर आप:

  • मैन्युअल प्रयास घटाकर दक्षता बढ़ा सकते हैं।
  • अपनी टीम के Git उपयोग में एकरूपता सुधार सकते हैं।
  • बार-बार कमांड दर्ज करने से जुड़ी त्रुटियाँ घटा सकते हैं।
  • अपने प्रोजेक्ट की आवश्यकताओं के अनुरूप कस्टम कार्यप्रवाह बना सकते हैं।

अपनी दैनिक दिनचर्या में दोहराए जाने वाले Git कार्यों की पहचान करना शुरू करें और उन्हें शक्तिशाली स्क्रिप्ट में बदल दें!

शुरुआत निःशुल्क

एआई शिक्षक के साथ Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “स्क्रिप्ट से Git कार्यों का स्वचालन” पाठ निःशुल्क है?

हाँ—“स्क्रिप्ट से Git कार्यों का स्वचालन” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“स्क्रिप्ट से Git कार्यों का स्वचालन” में मैं क्या सीखूँगा?

दोहराए जाने वाले Git कार्यों को स्वचालित करने के लिए कस्टम स्क्रिप्ट लिखें, दक्षता बढ़ाएँ और मैन्युअल त्रुटियाँ घटाएँ। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“स्क्रिप्ट से Git कार्यों का स्वचालन” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. GitOps के सिद्धांत और कार्यान्वयन
  2. स्क्रिप्ट से Git कार्यों का स्वचालन
  3. CI/CD के साथ Git एकीकरण
  4. DevOps में Git सुरक्षा: रहस्य, हस्ताक्षर और हुक
← Git उन्नत: मोनोरेपो, सबमॉड्यूल और कार्यप्रवाह पर वापस जाएँ