Git आदेशहरू प्रत्येक परीक्षकलाई थाहा हुनुपर्दछ

यो पोष्ट गिट चीट शीट हो जुन सब भन्दा साधारण गीट कमाण्डहरू हुन् जुन तपाईले दैनिक आधारमा प्रयोग गर्नुहुनेछ।

यदि तपाइँ विकासकर्ताहरूको साथ टेक्निकल टेस्टर हुनुहुन्छ भने, तपाइँ आधारभूत Git आदेशहरूसँग परिचित हुनुपर्दछ।

यस पोष्टमा पर्याप्त Git ज्ञान समावेश छ तपाईलाई QA को रूपमा दैनिक दिनको आधारमा जानका लागि।


यदि तपाइँ Git तपाइँको मेशिन मा स्थापित छैन भने, तपाइँ मा चरणहरु अनुसरण गर्न सक्नुहुन्छ म्याकमा Git कसरी स्थापना गर्ने र SSH कुञ्जीहरू उत्पन्न गर्ने ।



प्रारम्भिक गिट सेटअप

एक रिपो सुरु गर्नुहोस्

खाली गिट रेपो सिर्जना गर्नुहोस् वा अवस्थित एकलाई पुनः सुरु गर्नुहोस्


$ git init

एक रिपो क्लोन गर्नुहोस्

Foo रेपो क्लोन गर्नुहोस् एक नयाँ निर्देशिकामा foo भनिन्छ:

$ git clone https://github.com//foo.git foo

Git शाखा

Git मा नयाँ शाखा कसरी बनाउने

जब तपाईं नयाँ सुविधामा काम गर्न चाहानुहुन्छ, तपाईं सामान्यतया Git मा नयाँ शाखा सिर्जना गर्नुहुन्छ। त्यस्तै रूपमा, तपाईं सामान्यतया मास्टर शाखाबाट टाढा रहन चाहनुहुन्छ र तपाईंको आफ्नै विशेष शाखामा काम गर्न चाहनुहुन्छ जुन मास्टर सधैं सफा हुन्छ र तपाईं यसबाट नयाँ शाखाहरू सिर्जना गर्न सक्नुहुनेछ।

नयाँ शाखा प्रयोग गर्न:

$ git checkout -b

Git मा शाखा कसरी सूचीबद्ध गर्ने

यदि तपाइँ जान्न चाहानुहुन्छ कुन शाखा तपाईको कार्य निर्देशिका मा उपलब्ध छ, तब प्रयोग गर्नुहोस्:


$ git branch

उदाहरण आउटपुट:

develop my_feature master

Git मा कसरी शाखा स्विच गर्ने

जब तपाईं नयाँ शाखा सिर्जना गर्नुहुन्छ तब Git स्वचालित रूपमा नयाँ शाखामा स्विच हुन्छ।

यदि तपाईंसँग धेरै शाखाहरू छन् भने, तपाईं सजिलैसँग git चेकआउटको साथ शाखा बीच स्विच गर्न सक्नुहुन्छ:

$ git checkout master $ git checkout develop $ git checkout my_feature

Git मा कसरी शाखा हटाउने

स्थानीय शाखा मेटाउन:


$ git branch -d

-D प्रयोग गर्नुहोस् विकल्प फ्ल्याग यसलाई बल गर्न।

मूलमा रिमोट शाखा मेटाउन:

$ git push origin :

सम्बन्धित:

  • कसरी Git स्थापना गर्ने र म्याकमा SSH कुञ्जीहरू उत्पन्न गर्न


Git Stasing

To चरण एक फाइल केवल यो एक कमिट को लागी तयार गर्नु हो। जब तपाईं केही फाईलहरू थप गर्नुहुन्छ वा परिमार्जन गर्नुहुन्छ, तपाईंले ती परिवर्तनहरूलाई 'स्टेजिंग क्षेत्र' मा स्टेज गर्न आवश्यक पर्दछ। बक्सको रूपमा स्टेजिंगको बारेमा सोच्नुहोस् जहाँ तपाईंको ओछ्यानमुनि श्याभ गर्नु अघि सामानहरू राख्नुहुन्छ, जहाँ तपाईंको ओछ्यान तपाईंले पहिले खोलेको बक्सहरूको भण्डार हो।


Git स्टेज फाईलहरू

फाईलहरू स्टेज गर्न वा केवल फाईलहरू थप्न, तपाईंले git add आदेश प्रयोग गर्नु आवश्यक छ। तपाईं व्यक्तिगत फाईलहरू चरण गर्न सक्नुहुन्छ:

$ git add foo.js

वा सबै फाइलहरू एकैचोटि:

$ git add .

Git Unstage परिवर्तनहरू

यदि तपाईं चरणबाट निश्चित फाइल हटाउन चाहनुहुन्छ भने:

$ git reset HEAD foo.js

वा सबै चरणबद्ध फाईलहरू हटाउनुहोस्:


$ git reset HEAD .

तपाई कमाण्डको लागि उपनाम पनि सिर्जना गर्न सक्नुहुनेछ र Git को साथ प्रयोग गर्नुहोस्।

$ git config --global alias.unstage 'reset HEAD' $ git unstage .

Git स्थिति

यदि तपाईं कुन फाइलहरू सिर्जना, परिमार्जन वा मेटाइएको हेर्न चाहानुहुन्छ, गित स्थितिले तपाईंलाई रिपोर्ट देखाउनेछ।

$ git status

Git Commits

प्राय: कमिट गर्नु राम्रो अभ्यास हो। तपाईं जहिले पनि धकेल्नु अघि तपाईंको कमिटहरू स्क्वाश गर्न सक्नुहुन्छ। तपाईंले आफ्नो परिवर्तनहरू गर्नु अघि, तपाईंले उनीहरूलाई मंचन गर्न आवश्यक पर्दछ।

कमिट कमाण्डलाई एक -m विकल्प चाहिन्छ जसले कमिट सन्देश निर्दिष्ट गर्दछ।

तपाइँ तपाइँका परिवर्तनहरू यस्तै गर्न सक्नुहुन्छ:

$ git commit -m 'Updated README'

पूर्ववत कार्यहरू

निम्न आदेशले तपाईंको भर्खरको प्रतिबद्धतालाई अन्डु गर्दछ र ती परिवर्तनहरूलाई पुन: स्टेजमा राख्दछ, त्यसैले तपाईं कुनै काम गुमाउँनुहुन्न:

$ git reset --soft HEAD~1

पूर्ण रूपमा कमिट मेट्न र कुनै पनि परिवर्तन प्रयोग दूर फ्याक्न को लागी:

$ git reset --hard HEAD~1

स्क्वासिing कमिटहरू

मानौं हामीसँग comm कमिट छ, तर तपाईंले अहिले सम्म केहि पनि धकेल्नु भएको छैन र तपाई सबै कुरालाई एक कमिटमा राख्न चाहानुहुन्छ, त्यसोभए तपाईं प्रयोग गर्न सक्नुहुनेछ:

$ git rebase -i HEAD~4

| HEAD~4 अन्तिम चार कमिटलाई जनाउँछ।

| -i विकल्पले अन्तर्क्रियात्मक पाठ फाइल खोल्छ।

तपाईले प्रत्येक कमिटको बाँयामा शब्द 'छान्नुहोस्' देख्नुहुनेछ। एक माथी एक्लो छोड्नुहोस् र अन्य सबैलाई 'स्' स्क्वासका लागि बदल्नुहोस्, फाइल बचत गर्नुहोस् र बन्द गर्नुहोस्।

त्यसो भए अर्को अन्तर्क्रियात्मक विन्डो खुल्दछ जहाँ तपाईं आफ्ना प्रतिबद्ध सन्देशहरूलाई नयाँ कमिट सन्देशमा अपडेट गर्न सक्नुहुनेछ।



Git Push

तपाईंले आफ्नो परिवर्तनहरू प्रतिबद्ध गरिसकेपछि, अर्को रिमोट भण्डारमा पुश गर्नु हो।

पहिलो पुश

पहिलो पटक स्थानीय शाखा पुश गर्नुहोस्:

$ git push --set-upstream origin

त्यस पछि, त्यसपछि तपाईले प्रयोग गर्न सक्नुहुनेछ

$ git push

स्थानीय शाखालाई विभिन्न टाढाको शाखामा धकेल्नुहोस्

स्थानीय शाखालाई भिन्न टाढाको शाखामा धकेल्न तपाईले प्रयोग गर्न सक्नुहुनेछ:

$ git push origin :

अन्त्य अन्तिम पुश

यदि तपाईंले तपाईंको अन्तिम पुशलाई अन्डु गर्नुपर्‍यो भने, तपाईं प्रयोग गर्न सक्नुहुन्छ:

$ git reset --hard HEAD~1 && git push -f origin master

Git प्राप्त गर्नुहोस्

जब तपाईं git fetch प्रयोग गर्नुहुन्छ, Git ले तपाईंको हालको शाखाहरूमा अन्य समेटहरू मर्ज गर्दैन। यो विशेष गरी उपयोगी छ यदि तपाईंले आफ्नो भण्डारलाई अद्यावधिक राख्नु आवश्यक छ, तर केहि काम गर्दै हुनुहुन्छ जुन तपाईंले फाईलहरू अपडेट गर्नुभयो भने विच्छेद हुन सक्छ।

कमट्सलाई तपाइँको मास्टर शाखामा एकीकृत गर्न, तपाईं merge प्रयोग गर्नुहोस्।

अपस्ट्रीमबाट परिवर्तन ल्याउनुहोस्

$ git fetch upstream

Git पुल

पुलिंग केवल मर्ज पछि फ्याच गर्दै छ। जब तपाईं git pull प्रयोग गर्नुहुन्छ, गिट स्वचालित रूपमा अन्य कमिटहरू मर्ज गर्दछ तपाईं पहिले तिनीहरूको समीक्षाको लागि अनुमति दिए बिना। यदि तपाईंले आफ्नो शाखालाई नजिकबाट प्रबन्ध गर्नुभएन भने, तपाईं बारम्बार झगडामा लाग्न सक्नुहुन्छ।

एउटा हाँगा तान्नुहोस्

यदि तपाईं सँग एक शाखा भनिन्छ भने | _ _ _ _ | र तपाईं त्यो शाखा तान्न चाहनुहुन्छ, तपाईं प्रयोग गर्न सक्नुहुनेछ:

my_feature

सबै कुरा तान्नुहोस्

वा, यदि तपाईं सबै कुरा र सबै अरू शाखाहरू तान्न चाहनुहुन्छ भने

$ git pull origin/my_feature

गिट मर्जिंग र रिबसि।

जब तपाईं चलाउनुहुन्छ। _ _ _ _ |, तपाईंको HEAD शाखा उत्पन्न गर्दछ नयाँ कमिट , प्रत्येक प्रतिबद्ध इतिहास को पूर्वज संरक्षण।

को ओभरशूट एउटा शाखाको परिवर्तनलाई अर्कोमा लेख्छ बिना नयाँ कमिट सिर्जना गर्दै।

मास्टर शाखा फिचर शाखामा मर्ज गर्नुहोस्

$ git pull

वा रिबेस विकल्पको साथ तपाईले प्रयोग गर्नुहुन्छ:

git merge

सुविधा शाखा मास्टर शाखामा मर्ज गर्नुहोस्

$ git checkout my_feature $ git merge master

Git Stash

कहिलेकाँही तपाईं शाखामा परिवर्तन गर्नुहुन्छ, र तपाईं अर्को शाखामा स्विच गर्न चाहनुहुन्छ, तर तपाईं आफ्नो परिवर्तनहरू हराउन चाहनुहुन्न।

तपाईं आफ्नो परिवर्तनहरू टाँस्न सक्नुहुन्छ। यहाँ छ कि तपाईं Git मा कसरी स्ट्याश गर्नुहुन्छ।

$ git checkout my_feature $ git rebase master

अब, यदि तपाईं ती परिवर्तनहरू अनस्ट्याश गर्न चाहनुहुन्छ र तिनीहरूलाई तपाईंको कामको डाइरेक्टरी प्रयोगमा फिर्ता ल्याउन चाहनुहुन्छ भने:

$ git checkout master $ git merge my_feature

रोचक लेख