पाठ 2 · नींव
Git इंस्टॉल करें और एक सुरक्षित प्रतिबद्ध पहचान का पूर्वावलोकन करें
जांचें कि आपका टर्मिनल कौन सा Git चलाता है, इसे केवल आवश्यकता होने पर ही इंस्टॉल करें, और अपनी व्यक्तिगत कॉन्फ़िगरेशन को बदले बिना एक काल्पनिक नाम और ईमेल का पूर्वावलोकन करें। फिर GitTree के पहचान नियंत्रणों को सहेजे बिना उनका निरीक्षण करें।
- स्तर: शुरुआती
- 12 मिनट पढ़ा
- 5 मिनट का वीडियो
- अद्यतन किया गया
- इस पाठ से पहले: Git, GitTree और अपने होस्टिंग प्रदाता में अंतर बताएं
प्रगति इस ब्राउज़र में सहेजी गई.
चलाने से YouTube से वीडियो लोड होता है (गोपनीयता-उन्नत मोड)।
आप क्या सीखेंगे
- गुम निष्पादन योग्य को गुम रिपॉजिटरी से अलग करें।
- इंस्टॉलर संदेश पर भरोसा करने के बजाय Git का पथ और संस्करण सत्यापित करें।
- कमांड, रिपॉजिटरी और वैश्विक पहचान के दायरे की व्याख्या करें।
- मौजूदा पहचान बदले बिना पूर्वावलोकन GitTree डेमो।
शुरू करने से पहले
पहले पाठ 1 समाप्त करें. आप बिना किसी पाठ्यक्रम भंडार के साथ शुरुआत करते हैं: अभी तक कुछ भी प्रारंभ नहीं किया गया है। एक टर्मिनल फ़ोल्डर का उपयोग करें जो रिपॉजिटरी नहीं है और GitTree की नई टैब स्क्रीन है। पाठ 4 से पहले कुछ भी प्रारंभ न करें।
टर्मिनल कमांड को Git 2.52.0 से macOS (/opt/homebrew/bin/git) और Ubuntu 24.04 (/opt/git-2.52/bin/git) पर जांचा गया। आपका पथ और संस्करण भिन्न हो सकते हैं. GitTree की निरीक्षण की गई आवश्यकता Git 2.39.0 or newer है; यह दावा नहीं है कि 2.39.0 आज का नवीनतम या पसंदीदा सुरक्षा अद्यतन है। अपने प्लेटफ़ॉर्म के लिए एक अनुरक्षित पैकेज चुनें और उसे सत्यापित करें।
नेटिव गिट को किसी साइन-इन की आवश्यकता नहीं है। GitTree आपको अपने ईमेल या Git प्रदाता से साइन इन करने के लिए कहता है; नि:शुल्क योजना तब प्रत्येक स्थानीय Git सुविधा को कवर करती है, और आपकी रिपॉजिटरी आपके कंप्यूटर पर रहती है। रिकॉर्डिंग उस आवश्यकता से पहले की है, इसलिए साइन-इन संवाद नहीं दिखाया गया है। लेखक की पहचान कोई GitTree खाता, प्रदाता क्रेडेंशियल या क्रिप्टोग्राफ़िक हस्ताक्षर नहीं है। GitTree कदमों को GitTree 2.0 में Ubuntu 24.04 पर रिकॉर्ड किया गया था। macOS पर, कमांड दबाएँ जहाँ Windows और Linux Ctrl का उपयोग करें।
संकल्पना
एक कमिट आम तौर पर एक लेखक और एक कमिटर दोनों को रिकॉर्ड करता है, प्रत्येक का नाम और ईमेल होता है। जब कोई व्यक्ति किसी अन्य व्यक्ति के कार्य को लागू करता है तो वे भिन्न हो सकते हैं। सामान्य शुरुआती मामला दोनों के लिए आपकी कॉन्फ़िगर की गई पहचान का उपयोग करता है। नाम लिखने से यह साबित नहीं होता कि उस व्यक्ति के पास खाता है; हस्ताक्षर करना और होस्टिंग सत्यापन अलग-अलग विषय हैं।
पहचान कॉन्फ़िगरेशन को भविष्य के रिकॉर्ड पर रिटर्न पता चुनने के रूप में सोचें, न कि सर्वर में लॉग इन करने के रूप में। कॉन्फ़िगरेशन में परिवर्तन होने पर मौजूदा कमिट का नाम नहीं बदला जाता है। एक धक्का दिया गया कमिट उसके रिकॉर्ड किए गए ईमेल को उजागर कर सकता है, इसलिए उस पते का उपयोग करें जिसे आप उस इतिहास का हिस्सा बनाना चाहते हैं। इस पाठ्यक्रम के सभी पते काल्पनिक हैं।
| दायरा या तंत्र | दृढ़ता | प्रभाव |
|---|---|---|
मूल निवासी git -c key=value … | वह गिट मंगलाचरण | कमांड के लिए उस कॉन्फ़िगरेशन कुंजी को ओवरराइड करता है; इसे सहेजता नहीं है |
| रिपॉजिटरी-स्थानीय कॉन्फ़िगरेशन | रिपोजिटरी कॉन्फिगरेशन, सामान्यतः .git/config | उस भंडार पर लागू होता है; पाठ 4 के निर्माण के बाद जानबूझकर सेट करें |
| वैश्विक विन्यास | उपयोगकर्ता का वैश्विक Git कॉन्फ़िगरेशन | ओवरराइड के अधीन, रिपॉजिटरी में आपूर्ति में चूक होती है |
| GitTree इंजेक्टेड प्रोफ़ाइल | GitTree प्रोफ़ाइल प्लस कमांड इसे चलाता है | वैश्विक Git कॉन्फ़िगरेशन को दोबारा नहीं लिखता; बाहरी टर्मिनलों को यह विरासत में नहीं मिलता है |
| GitTree लेखन-वैश्विक प्रोफ़ाइल | प्रोफ़ाइल स्विच पर वैश्विक कॉन्फ़िगरेशन | अन्य Git टूल को भी प्रभावित करता है; यहाँ उपयोग नहीं किया गया |
साधारण स्केलर user.name और user.email के लिए, रिपॉजिटरी कॉन्फ़िगरेशन वैश्विक डिफ़ॉल्ट को ओवरराइड करता है; स्पष्ट मूल -c उस आमंत्रण के लिए उन कॉन्फ़िगरेशन मानों को ओवरराइड करता है। जैसा कि इसका यूआई बताता है, GitTree का इंजेक्ट-प्रोफ़ाइल कार्यान्वयन जानबूझकर रिपॉजिटरी की अपनी पहचान को सुरक्षित रखता है। उस प्रोफ़ाइल नीति को मैन्युअल रूप से टाइप की गई -c के समान न समझें। पर्यावरण चर, शामिल और वर्कट्री कॉन्फ़िगरेशन अतिरिक्त इनपुट पेश कर सकते हैं; उन्नत पहचान निदान पाठ 52 में आता है। Git का कॉन्फिग संदर्भ और कमांड-स्तरीय विकल्प देखें।
State boundary: inspecting a version/path or previewing -c values changes no working tree, index, local ref or remote ref. Installing Git changes software on the machine. Saving a profile/configuration would persist identity settings; we cancel the preview instead.
टर्मिनल में
1. स्थापित करने से पहले निरीक्षण करें
macOS को, गिट बैश में Windows को, या Linux को:
command -v git
git --versionकमांड क्रम में संलेखन आउटपुट का अवलोकन किया गया:
/opt/homebrew/bin/git
git version 2.52.0पथ इस मशीन का परिणाम है, प्रतिलिपि बनाने के लिए आवश्यक पथ नहीं। Windows पावरशेल में, command -v git के बजाय Get-Command git का उपयोग करें, फिर उसी संस्करण क्वेरी को चलाएँ। इस संलेखन जाँच में Windows व्यवहार निष्पादित नहीं किया गया है।
2. आवश्यकता पड़ने पर ही इंस्टॉल करें
यदि प्रयोग करने योग्य अनुरक्षित Git पहले से मौजूद है तो इस चरण को छोड़ दें। ये आदेश installation choices, not commands run while authoring this lesson हैं। वे सिस्टम सॉफ़्टवेयर बदलते हैं और अनुमोदन का अनुरोध कर सकते हैं।
- macOS: पहले से स्थापित होमब्रू के माध्यम से एक्सकोड कमांड लाइन टूल्स या गिट चुनें। दोनों को केवल इस पाठ के लिए न दौड़ाएँ। आधिकारिक स्थापना विकल्प.
xcode-select --installवैकल्पिक, केवल तभी जब होमब्रू पहले से ही उपलब्ध हो:
brew install git- Windows: आधिकारिक Git for Windows इंस्टालेशन पेज से अपने आर्किटेक्चर के लिए इंस्टॉलर प्राप्त करें, इसका इंटरैक्टिव सेटअप पूरा करें, और एक नया टर्मिनल खोलें। यहां कोई विशिष्ट इंस्टॉलर-स्क्रीन लेबल नहीं माना गया है।
- Linux: अपने वितरण के समर्थित पैकेज चैनल का उपयोग करें। Debian/Ubuntu के लिए, एक सामान्य विकल्प नीचे है; फेडोरा
sudo dnf install gitका उपयोग करता है। परिणामी संस्करण का निरीक्षण करें: एक पुराना वितरण GitTree की मंजिल से नीचे एक पैकेज की आपूर्ति कर सकता है। इसके विश्वास और रखरखाव निहितार्थ की समीक्षा किए बिना किसी तृतीय-पक्ष पैकेज रिपॉजिटरी को न जोड़ें। आधिकारिक Linux विकल्प।
sudo apt update
sudo apt install gitइंस्टॉलर/पैकेज-मैनेजर आउटपुट ओएस, पैकेज स्थिति और रिलीज के अनुसार भिन्न होता है; कोई मनगढ़ंत प्रतिलिपि प्रदान नहीं की जाती है। इंस्टालेशन के बाद, एक नया टर्मिनल खोलें, पथ/संस्करण क्वेरी दोहराएं और यदि आवश्यक हो तो GitTree पुनः आरंभ करें।
3. पूर्वावलोकन, बिना सहेजे
ये मूल क्वेरीज़ बिना रिपॉजिटरी के काम करती हैं। प्रत्येक कमांड में दोनों काल्पनिक क्षेत्र स्पष्ट रूप से होते हैं।
git -c user.name="GitTree Demo" -c user.email=demo@example.com config --get user.name
git -c user.name="GitTree Demo" -c user.email=demo@example.com config --get user.emailप्रेक्षित आउटपुट, प्रत्येक कमांड से एक पंक्ति:
GitTree Demo
demo@example.comअब केवल कमांड का ईमेल बदलें:
git -c user.name="GitTree Demo" -c user.email=maya@example.com config --get user.emailदेखा गया आउटपुट:
maya@example.comवह परिणाम इस मंगलाचरण का है। दोबारा चलाने पर भी पिछला कमांड demo@example.com लौटाएगा। कोई भी कमांड कॉन्फ़िगरेशन फ़ाइल नहीं लिखता है या कोई कमिट नहीं बनाता है। हम आपके सभी मौजूदा Git कॉन्फ़िगरेशन को प्रिंट नहीं करते हैं: इसमें निजी पते या क्रेडेंशियल-असर वाले URL हो सकते हैं।
GitTree में
गुम या अनुपयोगी Git
यदि खोज विफल हो जाती है, तो GitTree GitTree needs Git, This Git is too old या This Git could not be used दिखाता है। Looked in Git के गायब होने पर खोजे गए पथों को सूचीबद्ध करता है। ऐप के बाहर Git इंस्टॉल या रिपेयर करें, फिर Check again चुनें: GitTree फिर से देखता है और, केवल अगर उसे उपयोग करने योग्य Git मिलता है, तो नियमित नया टैब खोलता है। वीडियो इसे एक मशीन पर दिखाता है जहां Git अकेले ऐप से छिपा हुआ है: गायब-Git स्क्रीन, फिर Git के बाद वही स्क्रीन फिर से दिखाई देती है, फिर नया टैब।
Locate Git… भी उस स्क्रीन पर दिखाई देता है, लेकिन निरीक्षण किए गए स्रोत में इसकी क्रिया खाली है, इसलिए कार्यशील पिकर के रूप में इस पर भरोसा न करें; इंस्टॉलेशन को ठीक करने के बाद Check again का उपयोग करें। इस स्क्रीन को देखने के लिए आपको कभी भी कार्यशील Git को अनइंस्टॉल करने की आवश्यकता नहीं होगी।
बिना किसी भंडार के पहचान का पूर्वावलोकन करें
- नए टैब से, Preferences (
app.preferences.open) खोलें: macOS पर Command+,, Windows/Linux पर Ctrl+,। पूर्ण-विंडो प्राथमिकताएँ स्क्रीन की अपेक्षा करें। - इसके नेविगेशन में Profiles चुनें. चेतावनी पढ़ें कि Passed to each git command केवल Git कमांड पर लागू होता है GitTree चलता है। यदि मौजूदा प्रोफ़ाइल हैं, तो उन्हें संपादित न करें या स्विच न करें।
- New profile चुनें. एक सहेजे न गए फ़ॉर्म की अपेक्षा करें.
- Profile name में,
Course previewटाइप करें। Name for commits (user.name) में,GitTree Demoटाइप करें। Email for commits (user.email) में,demo@example.comटाइप करें। - Signing key (user.signingkey) और SSH command (core.sshCommand) को खाली छोड़ दें। How the identity reaches git के अंतर्गत, Passed to each git command का निरीक्षण करें। Written to ~/.gitconfig का चयन न करें.
- Cancel, not Create profile चुनें। बिना सहेजे गए फ़ॉर्म को प्रोफ़ाइल जोड़े बिना बंद करने की अपेक्षा करें। नए टैब पर लौटने के लिए Exit Preferences चुनें।
- बाद के निरीक्षण के लिए वैकल्पिक मार्ग: Command Palette… को Command+Shift+P / Ctrl+Shift+P के साथ खोलें, Switch Profile… टाइप करें, और उस सटीक कमांड (
profile.switch) का चयन करें। यह प्रोफ़ाइल खोलता है; यह चुपचाप एक अलग पहचान नहीं चुनता। बिना स्विच किए Exit Preferences से बंद करें।
पहचान-संबंधी प्रतिबद्धता विफलता के बाद एक अलग Set up your Git identity संवाद प्रकट होता है। इसमें नाम, ईमेल और स्पष्ट बचत लक्ष्य हैं। हम रिपॉजिटरी के बिना ऐसी विफलता को बाध्य नहीं करते हैं, और हम इस पूर्वावलोकन में उस संवाद का उपयोग नहीं करते हैं। पाठ 4 भंडार-स्थानीय पहचान प्रदान करता है; पाठ 52 निरंतर प्रोफाइल और कॉन्फ़िगरेशन को गहराई से सिखाता है।
नतीजा
अंत में, आप स्थापित पथ/संस्करण को जानते हैं और काल्पनिक कमांड-स्कोप पहचान की भविष्यवाणी कर सकते हैं। अभी भी कोई कोर्स वर्किंग ट्री, इंडेक्स, ब्रांच हिस्ट्री, रिमोट या ग्राफ नहीं है। कोई वैश्विक कॉन्फ़िगरेशन या प्रोफ़ाइल सहेजा नहीं गया था.
सामान्य गलतियाँ
- Installing GitTree and expecting bundled Git: निरीक्षण किया गया सेटअप प्रवाह आपके स्वयं के Git इंस्टॉलेशन का उपयोग करता है।
- Using the account email as automatic Git identity: खाता और प्रतिबद्ध मेटाडेटा अलग-अलग हैं।
- Saving a fictional global identity: इससे असंबद्ध कार्य प्रभावित हो सकता है; पूर्वावलोकन और बाद के पाठ्यक्रम-भंडार-स्थानीय सेटअप का उपयोग करें।
- Assuming a profile changes external terminals: इंजेक्टेड प्रोफाइल GitTree के कमांड पर लागू होते हैं, मनमाने ढंग से टर्मिनल प्रक्रियाओं पर नहीं।
- Expecting a name/email to authenticate a push: क्रेडेंशियल और सर्वर अनुमतियाँ अलग-अलग हैं।
अगर कुछ गलत होता है
यदि संस्करण कमांड नहीं चल सकता है, तो रिपॉजिटरी स्थिति की जांच करने से पहले इंस्टॉलेशन और टर्मिनल वातावरण की जांच करें। यदि Git चलता है लेकिन "git रिपॉजिटरी नहीं" रिपोर्ट करता है, तो Git मौजूद है; आरंभीकरण पाठ 4 में आता है।
यदि शेल और ऐप असहमत हैं, तो इंस्टॉलेशन के बाद ऐप को पुनरारंभ करें और यदि गेट दृश्यमान रहता है तो Check again चुनें। उपलब्ध होने पर इसके डायग्नोस्टिक टेक्स्ट में पथ/संस्करण का निरीक्षण करें। स्रोत का निष्क्रिय लोकेट कॉलबैक एक सिद्ध पुनर्प्राप्ति पथ नहीं है।
यदि आप गलती से कोई प्रोफ़ाइल सहेजते हैं या स्विच करते हैं, तो रुकें। ध्यान दें कि आपके पूर्व, ज्ञात कॉन्फ़िगरेशन को उसके वास्तविक नियंत्रण के माध्यम से पुनर्स्थापित करने से पहले कौन सा तंत्र बदल गया। मनमानी प्रोफ़ाइल न हटाएं या वैश्विक कॉन्फ़िगरेशन न मिटाएं: उन फ़ाइलों में असंबंधित सेटिंग्स हो सकती हैं। GitTree का रिपॉजिटरी अनडू जर्नल इंस्टॉलेशन या पहचान कॉन्फ़िगरेशन के लिए वादा किया गया रोलबैक नहीं है।
अपनी समझ की जाँच करें
प्रत्येक प्रश्न का उत्तर दें, फिर क्यों पढ़ें। "आवश्यक" चिह्नित प्रश्न पाठ को पूरा करने में गिने जाते हैं।
6 में से 0 सही
पाठ को पूरा करने के लिए आवश्यक प्रश्नों के सही उत्तर दें।
इस ब्राउज़र में चेक किया गया.
अभ्यास करें
जब पूर्वावलोकन ईमेल maya@example.com में बदल जाए तो आउटपुट की भविष्यवाणी करें, फिर ऊपर बदली गई इनपुट क्वेरी चलाएं और इसकी तुलना करें। मूल ईमेल क्वेरी दोहराएँ. GitTree फॉर्म का निरीक्षण करें, इसे रद्द करें, और पुष्टि करें कि कोई नई प्रोफ़ाइल पंक्ति दिखाई नहीं देती है। बिना किसी रिपॉजिटरी आरंभ किए जारी रखें।
आपकी अपनी पुष्टि: साइट आपका कंप्यूटर नहीं देख सकती।
पाठ को पूरा करने के लिए आवश्यक प्रश्नों के सही उत्तर दें और व्यावहारिक अभ्यास की पुष्टि करें।
पुनर्कथन
- स्थापना के बाद निष्पादन योग्य और संस्करण को सत्यापित करें; उनका अनुमान मत लगाओ.
- प्रतिबद्ध पहचान रिकॉर्ड किया गया मेटाडेटा है, खाता प्रमाणीकरण नहीं।
- पूर्वावलोकन का दायरा अस्थायी है; रिपॉजिटरी, वैश्विक और ऐप-प्रोफ़ाइल दृढ़ता भिन्न होती है।
संबंधित
शब्दावली शब्द प्रस्तुत किये गये
लेखक - مؤلف; कमिटर - مُودِع; प्रतिबद्ध - إيداع; प्रोफ़ाइल — ملف تعريف; भंडार - مستودع; कमांड पैलेट - لوحة الأوامر. पहचान मेटाडेटा कोई हस्ताक्षर नहीं है.
वीडियो प्रतिलेख
वीडियो का वर्णन, संकेत दर संकेत।
प्रतिलिपि दिखाएँ
- पहले Git जांचें, फिर पूर्वावलोकन करें इसे सहेजे बिना एक पहचान।
- एक कार्यशील Git निष्पादन योग्य और एक कमिट पहचान विभिन्न समस्याओं का समाधान करती है।
- अपना निष्पादन योग्य खोजें वर्तमान शेल चलेगा.
- बल्कि अब इसका संस्करण पढ़ें इंस्टॉलर से अनुमान लगाने की तुलना में।
- निरीक्षण किए गए GitTree स्रोत की आवश्यकता है गिट दो दशमलव उनतीस या नया।
- macOS पर, समर्थित कमांड-लाइन चुनें उपकरण या मौजूदा पैकेज मैनेजर।
- Windows उपयोगकर्ताओं को आधिकारिक चुनना चाहिए उनके आर्किटेक्चर के लिए इंस्टॉलर।
- Linux पर, आपका वितरण चुनता है पैकेज; इसके संस्करण को बाद में सत्यापित करें।
- स्थापना के बाद, ताज़ा उपयोग करें टर्मिनल और दोनों जाँचें दोहराएँ।
- GitTree खोज की पुनः जाँच कर सकता है इंस्टॉलेशन की मरम्मत करने के बाद.
- एक डेस्कटॉप प्रक्रिया खोज सकती है अपने खोल से अलग गिट.
- दृश्यमान लोकेट नियंत्रण नहीं है इस स्रोत में सिद्ध कार्य पथ।
- आपका नाम और ईमेल प्रतिबद्ध हो जाता है मेटाडेटा, सर्वर क्रेडेंशियल नहीं।
- लेखक, कमिटर, खाता और हस्ताक्षर संबंधित हैं लेकिन अलग-अलग अवधारणाएँ हैं।
- कॉन्फ़िगरेशन बदलना नहीं है मौजूदा प्रतिबद्धताओं में लोगों का नाम बदलें।
- काल्पनिक नाम पास करें और इस Git कमांड को ईमेल करें।
- ईमेल क्वेरी मान प्रिंट करती है इस मंगलाचरण के लिए आपूर्ति की गई।
- एक कमांड-स्कोप्ड मान है कोई सहेजी गई वैश्विक सेटिंग नहीं.
- केवल आपूर्ति की गई ईमेल बदलें. भविष्यवाणी करें इसे चलाने से पहले अगला परिणाम।
- बदला हुआ इनपुट माया उत्पन्न करता है केवल इस प्रश्न के लिए काल्पनिक पता।
- मूल आदेश दोहराएँ, और इसकी आपूर्ति की गई ईमेल फिर से प्रकट होती है।
- रिपॉजिटरी सेटिंग्स, वैश्विक डिफ़ॉल्ट और ऐप प्रोफ़ाइल अलग-अलग स्थानों पर बनी रहती हैं।
- GitTree की इंजेक्टेड प्रोफ़ाइलें सुरक्षित रखती हैं रिपॉजिटरी की स्वयं कॉन्फ़िगर की गई पहचान।
- प्राथमिकताएँ खोलें. यह एक पूर्ण-विंडो है स्क्रीन, रिपॉजिटरी ऑपरेशन नहीं।
- प्रोफ़ाइल खोलें और पढ़ें जहां पहचान लागू होती है.
- इंजेक्ट की गई प्रोफ़ाइलें GitTree को प्रभावित करती हैं आदेश, बाहरी टर्मिनल नहीं।
- एक सहेजा न गया ड्राफ्ट बनाएं; हम करेंगे प्रोफ़ाइल बनाने से पहले रद्द करें.
- ऐसा करने के लिए एक स्पष्ट प्रोफ़ाइल लेबल का उपयोग करें पूर्वावलोकन को पहचानना आसान है.
- GitTree डेमो के रूप में दर्ज करें काल्पनिक प्रतिबद्ध नाम.
- काल्पनिक पता दर्ज करें, आपका व्यक्तिगत खाता ईमेल नहीं.
- इंजेक्शन मोड रखें; छोड़ो हस्ताक्षर कुंजी और SSH कमांड खाली।
- ड्राफ्ट रद्द करें. एक खुला प्रपत्र कोई सहेजी गई प्रोफ़ाइल नहीं है.
- के साथ नए टैब पर लौटें कोई भंडार नहीं बनाया गया.
- पैलेट प्रोफ़ाइल खोलता है अपनी पहचान बदले बिना.
- बिना चुने फिर से चले जाओ एक अलग सहेजी गई पहचान.
- विश्व स्तर पर डेमो सहेजने से प्रभाव पड़ सकता है इस मशीन पर असंबंधित कार्य.
- रिपॉजिटरी पूर्ववत करना कोई वादा किया गया रोलबैक नहीं है स्थापना या पहचान सेटिंग्स के लिए.
- Git सत्यापित करें, से अलग पहचान लॉगिन करें, और चुनें कि सेटिंग्स कहाँ बनी रहती हैं।
- आपका चेक दो ईमेल परिणाम है और एक अपरिवर्तित प्रोफ़ाइल सूची.
- इसके बाद, अपनी कामकाजी फाइलों को अलग करें वह स्नैपशॉट जिसे आप प्रतिबद्ध करना चुनते हैं।