अपस्ट्रीम को हानिकारक कहा जाता है
अफसोस, "अपस्ट्रीम" का एक और उपयोग है कि यहां अन्य उत्तर नहीं मिल रहे हैं, अर्थात् रेपो के भीतर आने वाले माता-पिता के बच्चे के रिश्ते को संदर्भित करने के लिए। प्रो गेट बुक में स्कॉट चाकोन विशेष रूप से इसके लिए प्रवण हैं, और परिणाम दुर्भाग्यपूर्ण हैं। बोलने के इस तरीके की नकल न करें।
उदाहरण के लिए, वह एक मर्ज के बारे में कहता है, जिसके परिणामस्वरूप ऐसा होता है
आपके द्वारा मर्ज की गई शाखा द्वारा बताई गई कमेटी आपके द्वारा किए गए कमिट के सीधे ऊपर थी
वह यह कहना चाहता है कि प्रतिबद्ध बी, ए के एकमात्र बच्चे का ... इकलौते बच्चे का एकमात्र बच्चा है, इसलिए बी को ए में विलय करना बी को इंगित करने के लिए रेफरी ए को स्थानांतरित करने के लिए पर्याप्त है। यह दिशा क्यों है "डाउनस्ट्रीम" के बजाय "अपस्ट्रीम" कहा जाना चाहिए, या इस तरह के शुद्ध सीधी-रेखा ग्राफ की ज्यामिति को "सीधे अपस्ट्रीम" क्यों कहा जाना चाहिए, पूरी तरह से अस्पष्ट है और शायद मनमाना है। ( git-merge
जब वह कहता है कि इस संबंध को समझाने के लिए पुरुष पृष्ठ इस संबंध को समझाने का एक बेहतर काम करता है, "वर्तमान शाखा प्रमुख नामित कमेटी का पूर्वज है।"
वास्तव में, चाकोन खुद को "डाउनस्ट्रीम" का उपयोग करने के लिए बाद में बिल्कुल उसी चीज का मतलब प्रतीत करता है, जब वह सभी बच्चों को हटाए गए प्रतिबद्ध के पुनर्लेखन की बात करता है:
इस फ़ाइल को पूरी तरह से अपने Git इतिहास से हटाने के लिए आपको 6df76 से सभी कमियों को फिर से लिखना होगा
मूल रूप से उन्हें ऐसा कोई स्पष्ट विचार नहीं है कि समय के साथ कमिट्स के इतिहास का जिक्र करने पर उन्हें "अपस्ट्रीम" और "डाउनस्ट्रीम" से क्या मतलब है। यह उपयोग अनौपचारिक है, तब, और प्रोत्साहित नहीं किया जाना चाहिए, क्योंकि यह सिर्फ भ्रमित है।
यह पूरी तरह से स्पष्ट है कि प्रत्येक प्रतिबद्ध (एक को छोड़कर) में कम से कम एक माता-पिता हैं, और माता-पिता के माता-पिता इस प्रकार पूर्वजों हैं; और दूसरी दिशा में, बच्चों और वंशज हैं। यह स्वीकृत शब्दावली है, और ग्राफ़ की दिशा का स्पष्ट रूप से वर्णन करता है, इसलिए जब आप वर्णन करना चाहते हैं कि रेपो के ग्राफ ज्यामिति के भीतर एक दूसरे से कैसे संबंधित हैं, तो बात करना चाहते हैं। इस स्थिति में "अपस्ट्रीम" या "डाउनस्ट्रीम" शिथिल का उपयोग न करें।
[अतिरिक्त ध्यान दें: मैं पहले चाकोन वाक्य के बीच के संबंध के बारे में सोच रहा हूं जो मैं ऊपर और git-merge
मैन पेज का हवाला देता हूं , और यह मेरे लिए होता है कि पूर्व बाद की गलतफहमी पर आधारित हो सकता है। मैन पेज एक ऐसी स्थिति का वर्णन करता है, जहां "अपस्ट्रीम" का उपयोग वैध है: तेजी से अग्रेषण अक्सर तब होता है जब "आप एक अपस्ट्रीम रिपॉजिटरी पर नज़र रख रहे हैं, तो आपने कोई स्थानीय परिवर्तन नहीं किया है, और अब आप एक नए में अपडेट करना चाहते हैं। ऊपर की ओर संशोधन। " इसलिए शायद चाकोन ने "अपस्ट्रीम" का इस्तेमाल किया क्योंकि उन्होंने इसे मैन पेज में देखा। लेकिन मैन पेज में एक रिमोट रिपॉजिटरी है; चॉकोन के तेजी से अग्रेषण के उद्धृत उदाहरण में कोई दूरस्थ रिपॉजिटरी नहीं है, बस स्थानीय रूप से निर्मित शाखाओं का एक जोड़ा है।]