2016-02-24 4 views
5

में किन परिस्थितियों में हो सकता है git checkout master तुलना में एक अलग काम कर रहे प्रतिलिपि राज्य में git pull origin master आदेश परिणाम ->git pull ->git checkout feat-a ->git merge master?रिमोट परिवर्तनों को देखने में विफल होने के लिए 'गिट पुल' का कारण क्या हो सकता है?

लंबी कहानी।

मेरे पास एक फीचर शाखा है, इसे feat-a पर कॉल करें। मैं इस शाखा पर काम कर रहा एकमात्र डेवलपर हूं। शाखा master शाखा से बनाई गई थी। दोनों शाखाओं में रिमोट उत्पत्ति, origin/feat-a और origin/master है। कुछ खास नहीं, आपके ठेठ गिट भंडार व्यवस्था।

आज मैं अपनी फीचर शाखा को दूरस्थ master से अपडेट करना चाहता था। अन्य डेवलपर्स के साथ पहले के संचार से, मुझे पता था कि जब मैं रिमोट master को अपनी फीचर शाखा में विलय करता हूं तो विवादित परिवर्तन होंगे।

मैं SourceTree का उपयोग कर रहा हूं। इसलिए, feat-a शाखा की जांच के साथ, मैंने मूल/मास्टर शाखा पर संदर्भ मेनू खोला और Pull origin/master into current branch चुना। गिट रिपोर्टिंग देखने के लिए मैं चौंक गया कि मेरी शाखा पहले से ही अद्यतित है। मुझे पता था कि यह सही नहीं है, रिमोट master शाखा में बदलाव होना चाहिए। मैंने कुछ बार आदेश दोहराया। हमेशा एक ही अद्यतित संदेश मिला।

100% सुनिश्चित करने के लिए, मैंने इसे "लंबा रास्ता" किया। मैंने master शाखा की जांच की, Pull बटन पर क्लिक किया। शाखा को नवीनतम प्रतिबद्धताओं के साथ अपडेट किया गया। फिर मैंने feat-a शाखा की जांच की और फिर मास्टर शाखा पर संदर्भ मेनू खींच लिया और Merge master into current branch उठाया। देखा! यहां विलय संघर्ष था जो मुझे मिलने की उम्मीद थी!

यह मुझे परेशान कर दिया। मैंने माना था कि pullorigin/master से मेरी वर्तमान शाखा में master की जांच करना, दूसरी शाखा को देखना, फिर master को वर्तमान शाखा में विलय करना (अपवाद के साथ जो दूरस्थ master से दूसरी शाखा में खींच रहा है, मेरे अपडेट को अपडेट नहीं करता है स्थानीय master, लेकिन इससे इस मुद्दे को प्रभावित नहीं करना चाहिए)।

अनिवार्य रूप से, feat-a में origin/master से किसी कारण pull आदेश के लिए मुझे समझाने की origin/master पर कोई बदलाव नहीं है, और केवल स्विचिंग शाखाओं और मैनुअल विलय की उम्मीद के रूप में काम के साथ लंबा रास्ता देखते हैं कि कोशिश कर रहा था।

मुझे यकीन नहीं है कि SourceTree कुछ विशेष कर रहा है जो इस मुद्दे को प्रभावित कर सकता है।

+0

मुझे स्थानीय मशीन में गिटूब 'मास्टर शाखा 'से कोड को खींचकर कल भी इस मुद्दे का सामना करना पड़ा, लेकिन यह कहा गया कि आपकी शाखा अद्यतित है, और फिर ऊपर बताए गए चरणों का पालन करें। मैंने सोचा कि यह एक बग होना चाहिए। – sahil

+0

अपनी ट्रैकिंग को सत्यापित करें जो आप सोचते हैं। 'गिट शाखा -वव 'आपको दिखाएगी कि प्रत्येक स्थानीय शाखा के लिए रिमोट शाखाओं को किस प्रकार ट्रैक किया जाता है। आप पाते हैं कि किसी भी तरह 'मास्टर' 'मूल/मास्टर' के अलावा कुछ और ट्रैकिंग कर रहा है। –

उत्तर

1

आप कहते हैं कि आप सॉर्सेट्री का उपयोग करते हैं, इसलिए मुझे लगता है कि आप वास्तव में कमांड लाइन पर git pull origin master टाइप नहीं करते थे। मेरा अनुमान है कि यह GUI संदेश में कुछ भ्रमित है, या सॉर्सेट्री में एक बग है।

मैं बजाय सोर्सेट्री डेवलपर्स से पूछूंगा।

+0

हां, यह मामला हो सकता है। SourceTree को अपडेट करने के बाद आज मैंने इस मुद्दे का अनुभव किया। मेरे पास पहले ऐसे मुद्दे नहीं थे, इसलिए यह वास्तव में SourceTree में कुछ नई बग हो सकता है। मैं इसे आज पुन: पेश करने की कोशिश करूंगा। – JustAMartin

+0

आप सही थे। मैं - और मेरे कुछ सहयोगियों - इस बग के पीड़ित बन गए: https://jira.atlassian.com/browse/SRCTREEWIN-4329 मुझे लगता है कि जीयूआई उपकरणों पर भरोसा करने के लिए कीमत बहुत अधिक है। – JustAMartin

संबंधित मुद्दे