दिलचस्प पोस्ट
getSize () मुझे त्रुटि दे रही है विंडोज एक्सप्लोरर उन्हें प्रदर्शित करने के लिए कैसे नाम से फाइलों की सूची को कैसे सॉर्ट कर सकता है? एक्लिप्स प्रोजेक्ट में लाइब्रेरी कैसे जोड़ें साधारण सीरियल पॉइंट-टू-पॉइंट कम्यूनिकेशन प्रोटोकॉल स्ट्रिंग सरणी में स्ट्रिंग में स्ट्रिंग की जांच करने के लिए C # का उपयोग करना हर महीने के पहले रविवार को चलाने के लिए कैसे समय निर्धारित करें एंड्रॉइड पर जावा का उपयोग कर एक पीडीएफ फाइल प्रस्तुत करें जब भी तृतीय पक्ष OAuth प्रदाताओं (DotNetOpenAuth का उपयोग कर) के माध्यम से प्राधिकरण की अनुमति देता है, तो OAuth के साथ मेरी REST API को सुरक्षित करना विंडोज पर LEX / YACC फाइलें कैसे संकलित करें? पिकासो लाइब्रेरी, एंड्रॉइड: त्रुटि सुनने वाला का उपयोग करना डेटाफ्रेम में प्रत्येक समूह के भीतर अधिकतम मूल्य निकालें एनईटी प्रतिबिंब कितना महंगा है? सभी enums के लिए StringEnumConverter को लागू करने के लिए वैश्विक रूप से Json.Net को कैसे बताने के लिए कस्टम फ़ॉन्ट और XML लेआउट (एंड्रॉइड) यूआरएल PHP का अंतिम भाग प्राप्त करें

जीआईटी – चेरी-पिक – होवो / व्हाइटो

समस्या: आप किसी व्यक्ति द्वारा विकसित की गई किसी सुविधा का परीक्षण करना चाहते हैं, लेकिन यह केवल एक दूरस्थ शाखा में मौजूद है जो कि पुराना समय से बाहर है।

स्रोत

  1. चेरी-पिक कैसे समस्या को हल करता है?
  2. मैं git या git क्यों लागू नहीं करोगे?

वेब के समाधान से एकत्रित समाधान "जीआईटी – चेरी-पिक – होवो / व्हाइटो"

समस्या: आप किसी व्यक्ति द्वारा विकसित की गई किसी सुविधा का परीक्षण करना चाहते हैं, लेकिन यह केवल एक दूरस्थ शाखा में मौजूद है जो कि पुराना समय से बाहर है।

यदि आप मर्ज या रीसाइज किए गए हैं, तो संभवतः आपस में विवादित पुराने परिवर्तनों का एक गुच्छा मिलेगा।

चेरी पिकिंग के साथ, आप एक बदलाव सेट लेते हैं, और फिर से दोहराते हैं कि एक नई शाखा के रूप में एक नई प्रतिबद्धता है।

यह उपयोगी है यदि आप चाहते हैं कि किसी अन्य शाखा में कोई भी प्रतिबद्ध हो, उसके इतिहास के बिना

यह -x विकल्प का उपयोग करने के लिए उपयोगी है, इसलिए प्रतिबद्ध संदेश में एक नोट है जहां से चेरी को चुना गया था

मैं git या git क्यों लागू नहीं करोगे?

क्योंकि git लागू पैच (फाइलें) लागू करने के लिए है, और git पैच की श्रृंखला को लागू करने के लिए हूँ जीटी चेरी-पिक परमिट लागू होता है – यानी, आपके खुद के रेपो से बना रहता है, बनाम आप अन्य रेपो से आयात करते हैं

git help cherry-pick :

git-cherry-pick – कुछ मौजूदा कमिट्स द्वारा शुरू किए गए परिवर्तनों को लागू करें

[…]

एक या अधिक मौजूदा प्रतिबद्धता को देखते हुए, हर एक के लिए एक नए प्रतिबद्धता को दर्ज करने के लिए प्रत्येक परिवर्तन को लागू करते हैं। इसके लिए आपके काम के पेड़ को साफ होना आवश्यक है (HEAD कमेटी से कोई संशोधन नहीं)

तो, जब आप cherry-pick हैं, तो git लेता है बदलाव (इसकी diff ) और यह आपके वर्तमान कार्यशील निर्देशिका पर लागू करने की कोशिश करता है, एक नई प्रतिबद्धता बना रहा है जो आपके cherry-pick बराबर है।

यह एक अलग इतिहास रेखा पर किसी अन्य प्रतिबद्ध के परिवर्तनों को फिर से करने का एक तरीका है।

परिवर्तन लेने के अलावा, cherry-pick भी लेखक की तरह मूल प्रतिबद्ध की जानकारी को संरक्षित करता है और वह

अंत में, cherry-pick को लागू करने के लिए एक समूह का आदान cherry-pick प्रदान प्राप्त हो सकता है, इस मामले में यह cherry-pick जैसे कि उन्हें कालानुक्रमिक क्रम (पुरानी पहले) में एक जैसा लगेगा।

मुसीबत:
आप किसी ऐसे व्यक्ति की सुविधा का परीक्षण करना चाहते हैं जिसे किसी ने विकसित किया है, लेकिन यह केवल एक दूरदराज शाखा में मौजूद है जो कि पुरानी पुरानी है।

यह समस्या को हल करता है क्योंकि:

  • आप पुरानी शाखा को सम्मिलित नहीं करना चाहते हैं, जिसमें कमीशन शामिल हैं जो आपके वर्तमान विकास की स्थिति में अब प्रासंगिक नहीं हैं
  • आप अपनी शाखा को एक पुराने शाखा के ऊपर रीबेस करने के लिए सिर्फ एक प्रतिबद्ध करने के लिए नहीं चाहते हैं।
  • आपको अपनी शाखा को उस पुरानी शाखा में मर्ज करने की ज़रूरत नहीं होगी

अंतिम बिंदु महत्वपूर्ण है क्योंकि चेरी-उठा के पहले दोष यह है कि यह डुप्लिकेट कमिट का परिचय देता है । लेकिन आपके मामले में, इससे कोई फर्क नहीं पड़ता।

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