2016-01-21 7 views
5

हम दृश्य स्टूडियो 2015 के माध्यम से गिट के साथ काम करते हैं। हमारे पास एकल शाखा 'मास्टर' के साथ केंद्रीय भंडार (गिटलैब) है। दो लोगों ने भंडार क्लोन किया है।गिट: कुछ बदलावों को छिपाएं

  1. पहले व्यक्ति ने समाधान में "test-new-file-v.txt" फ़ाइल जोड़ा है। इसने समाधान फ़ाइल (.sln) बदल दी है और स्ट्रिंग "VisualStudioVersion = 14.0.23107.0" बदल दी है। फिर वह आपके स्थानीय भंडार में प्रतिबद्ध होता है और फिर इस प्रतिबद्धता को केंद्रीय भंडार (गिटलैब) में धक्का देता है। समाधान में enter image description here

  2. दूसरा पुरुष शामिल किया है "testgit.txt" फ़ाइल: उसके बाद, हम इस केंद्रीय भंडार (GitLab) में प्रतिबद्ध देख चुके हैं। इसने समाधान फ़ाइल (.sln) भी बदल दी है, लेकिन स्ट्रिंग VisualStudioVersion को नहीं बदला है। फिर वह पुश से पहले केंद्रीय भंडार (गिटलैब) खींचना चाहता है।

  3. दूसरे व्यक्ति के पास संघर्ष था। वह विजुअल स्टूडियो 2015 के माध्यम से विलय करता है और देखता है कि अलग-अलग लड़के ने "विजुअलस्टूडियोवर्सन = 14.0.23107.0" पर "विजुअलस्टूडियोवर्सन = 14.0.24720.0" को बदलने में गलती की है। दूसरा लड़का स्ट्रिंग "VisualStudioVersion = 14.0.24720.0" अपरिवर्तित छोड़ना चाहता है। उन्होंने इस स्ट्रिंग के लिए स्थानीय राज्य "VisualStudioVersion = 14.0.24720.0" चुना और प्रतिबद्ध विलय कर दिया। इसके बाद उन्होंने केंद्रीय दो भंडार (गिटलैब) में इन दो कामों को धक्का दिया।
  4. उसके बाद, हम केंद्रीय भंडार (GitLab) में इतिहास और परिवर्तन देखा है और देखा है कि प्रतिबद्ध दूसरे पुरुष से विलय: enter image description here

हम देखते हैं केंद्रीय भंडार में (GitLab) समाधान फ़ाइल है कि स्ट्रिंग "VisualStudioVersion = 14.0.24720.0" और यह सही है, लेकिन हम नहीं देखते हैं कि यह स्ट्रिंग स्ट्रिंग "VisualStudioVersion = 14.0.23107.0" को प्रतिस्थापित करती है, क्योंकि पहले व्यक्ति से प्रतिबद्धता इस स्ट्रिंग में होती है और प्रतिबद्धता को मर्ज करने से पहले होती है।

मेरे सवालों का:

  1. यह सही व्यवहार है? मैं विलय प्रतिबद्धता में देखने की उम्मीद करता हूं कि "VisualStudioVersion = 14.0.23107.0" स्ट्रिंग को "VisualStudioVersion = 14.0.24720.0" में बदल दिया गया है।
  2. मैं व्यवहार कैसे प्राप्त कर सकता हूं जिसमें मैं सभी परिवर्तन देख सकता हूं?

उत्तर

2
  1. मैंने पहले अपने स्वामी शाखा पर प्रतिबद्ध है, ताकि स्थानीय स्तर पर वह एक परिवर्तन यह है कि धक्का दिया हो जाएगा नहीं हो सकता है वह अपने परिवर्तनों को नहीं मिला संभालने कर रहा हूँ। यदि आपकी शाखा पुरानी है तो यह कोड को वापस लाया जा सकता है।

  2. मैं मास्टर में परिवर्तन नहीं करने का सुझाव दूंगा। अलग स्थानीय शाखा बनाएं और मास्टर में पुल अनुरोधों का उपयोग करें।

अपनी शाखाओं को व्यवस्थित रखने के लिए गिट शाखा रणनीति का उपयोग करने में देखें।

Git Branching Model

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