इस सप्ताह, मैंने Git के बारे में अपनी समझ को गहरा किया, विशेषकर Git रिमोट के साथ काम करते हुए। एक शर्त के रूप में, रिमोट के साथ काम करते समय Git मर्जिंग से परिचित होना आवश्यक है। पिछले सप्ताह, मैंने Git मर्ज के साथ अपना पहला अनुभव साझा किया और कुछ सर्वोत्तम प्रथाओं पर चर्चा की। इस सप्ताह, मैंने उस ज्ञान को एक नई सुविधा पर काम करते हुए लागू किया, अपने स्वयं के भंडार में नहीं, बल्कि एक सहयोगी के भंडार में - मेरे मित्र मयंक के भंडार में। इसके साथ ही, उन्होंने मेरी रिपॉजिटरी में एक फीचर पर काम किया, जिससे हमें Git का उपयोग करके दूरस्थ सहयोग का अभ्यास करने की अनुमति मिली।
वर्तमान में, जो उपकरण मैं पिछले कुछ हफ्तों से विकसित कर रहा हूं वह तापमान और मॉडल जैसे विकल्पों के लिए मानों के एक डिफ़ॉल्ट सेट का उपयोग करता है, जो तब लागू होता है जब उपयोगकर्ता विशिष्ट तर्क प्रदान नहीं करते हैं। इस नई सुविधा का लक्ष्य उपयोगकर्ता की होम निर्देशिका में स्थित TOML फ़ाइल से कॉन्फ़िगरेशन सेटिंग्स को पढ़ने के लिए समर्थन जोड़कर टूल की कार्यक्षमता का विस्तार करना था।
उदाहरण के लिए, यदि किसी उपयोगकर्ता के पास C:\User\Anh\config.toml पर कॉन्फ़िगरेशन फ़ाइल है, तो टूल अब उपयोगकर्ता की होम निर्देशिका में .toml फ़ाइलों के अस्तित्व की जांच करेगा। यदि ऐसी कोई फ़ाइल मौजूद है, तो टूल फ़ाइल को पढ़ता है और अंतर्निहित डिफ़ॉल्ट को ओवरराइड करते हुए, डिफ़ॉल्ट कॉन्फ़िगरेशन सेट करने के लिए उसके मान लागू करता है। हालाँकि, उपयोगकर्ता अभी भी कमांड-लाइन तर्क प्रदान कर सकते हैं, जिन्हें TOML फ़ाइल मानों पर प्राथमिकता दी जाएगी।
इस सुविधा को लागू करने के लिए, मैंने TOML कॉन्फ़िगरेशन फ़ाइल की सामग्री को पार्स करने के लिए toml पैकेज का उपयोग किया:
import * as toml from 'toml';
चूंकि उपकरण उपयोगकर्ता की होम निर्देशिका में एक .toml फ़ाइल की खोज करेगा, मैंने होम निर्देशिका पथ को पुनः प्राप्त करने के लिए Node.js के अंतर्निहित ओएस मॉड्यूल का उपयोग किया:
const os = require("os"); const homeDir = os.homedir();
उपयोगकर्ता की होम निर्देशिका से सभी फ़ाइलों को इकट्ठा करने के बाद, मैंने छुपी हुई फ़ाइलों (जो एक बिंदु से शुरू होती हैं) को खोजने के लिए उन पर पुनरावृत्ति की, जो .toml पर समाप्त होती हैं। मिली पहली .toml फ़ाइल का उपयोग टूल के लिए कॉन्फ़िगरेशन स्रोत के रूप में किया गया था।
जैसा कि पहले उल्लेख किया गया है, इस सप्ताह में गिट रिमोट वर्कफ़्लोज़ और मयंक के साथ गिट विलय का अभ्यास शामिल था। उसकी रिपॉजिटरी में एक फीचर पर काम करने के लिए, मैंने इन चरणों का पालन किया:
git push origin
एक बार जब मयंक ने एक नई शाखा में अपने परिवर्तन किए और पुल अनुरोध (पीआर) का अनुरोध किया, तो मैं विलय से पहले उसके कोड का परीक्षण करना चाहता था। यहीं पर git रिमोट आवश्यक हो गया:
git remote add
git fetch
git checkout -b/
परीक्षण के दौरान, मैंने मयंक की शाखा में दो प्रमुख मुद्दों की पहचान की:
// Resolve the path to the configuration file const configPath = path.resolve(__dirname, "../.toml"); // Load configuration from config.toml const config = loadConfig(configPath);
इन मुद्दों की पहचान करने के बाद, मैंने स्लैक पर मयंक के साथ उन पर चर्चा की और समाधान खोजने के लिए सहयोग किया। मैंने उनके पुल अनुरोध पर सीधे प्रतिक्रिया भी प्रदान की। इस प्रक्रिया से मुझे ऐसा महसूस हुआ जैसे मैं वास्तविक दुनिया की सहयोगी परियोजना में योगदान दे रहा हूं। एक बार जब मैं सुधारों से संतुष्ट हो गया, तो मैंने उसकी शाखा को मुख्य शाखा में विलय कर दिया और इसे अपने दूरस्थ भंडार में भेज दिया।
गिट रिमोट के साथ काम करने और विलय की यह प्रक्रिया अविश्वसनीय रूप से शैक्षिक रही है। मैं अब साझा कोडबेस पर सहयोग करने में अधिक आश्वस्त महसूस करता हूं। पहले, मैं अक्सर विभिन्न डेवलपर्स के कई प्रतिबद्धताओं और योगदानों से अभिभूत महसूस करता था, लेकिन अब मेरे पास Git वर्कफ़्लोज़ का बेहतर नियंत्रण और समझ है।
इस सुविधा पर काम करके और Git रिमोट को एकीकृत करके, मैंने व्यावहारिक अनुभव प्राप्त किया है जो भविष्य की परियोजनाओं के लिए अमूल्य होगा।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3