मर्ज के दौरान हमेशा नए संस्करण का चयन करने के लिए बाध्य करें?


103

चलो मान mergeलेते हैं कि मैं संघर्ष कर रहा हूं और एक मर्ज संघर्ष है।

मेरा सवाल यह है: मैं हमेशा संघर्ष में कोड के नए संस्करण को चुनने के लिए कैसे बाध्य कर सकता हूं ताकि मुझे संघर्ष को हाथ से हल करने की आवश्यकता न हो?



लेकिन मैं एक मर्ज करना चाहता हूं (कमिट नहीं करना), लेकिन इसके अलावा संघर्षों को स्वतः हल करना।
बारटेक २

जवाबों:


188

यह बिल्कुल "नया" संस्करण नहीं है, लेकिन आप यह बता सकते हैं कि हमेशा वर्तमान शाखा का उपयोग करके git merge branch -X oursसंस्करण को पसंद करने के लिए, या शाखा के विलय को पसंद करने के लिए, का उपयोग करके git merge branch -X theirs

से man git-merge:

हमारा:

यह विकल्प हमारे संस्करण के पक्ष में सफाई से स्वतः हल होने के लिए विरोधी हॉक को रोकता है। दूसरे पेड़ से परिवर्तन जो हमारे पक्ष के साथ संघर्ष नहीं करते हैं, मर्ज के परिणाम परिलक्षित होते हैं। एक बाइनरी फ़ाइल के लिए, पूरी सामग्री हमारी तरफ से ली गई है।

उन लोगों के:

यह "हमारे" के विपरीत है।


9
ours- मैं theirs!! बस यह कहो और आप समझते हैं कि कमांड क्या करता है! आई लव गिट! : डी
हेवायर

14
ध्यान दें: यदि आपने पहले ही उपयोग कर लिया है git merge branch, तो आपको ऐसा करने से git merge --abortपहले आपको इसकी आवश्यकता होगी ।
जॉन ड्वोरक

1
मेरे लिए काम नहीं करता है। यह अभी भी मर्ज को समाप्त करता है। error: The following untracked working tree files would be overwritten by merge:मुझे यह भी पता नहीं है कि ये फाइलें पहली बार इस शाखा में क्यों हैं, लेकिन इन्हें अधिलेखित किया जाना चाहिए, और इंकार करना चाहिए।
एमसीवी

2
यदि वे अनट्रैक हैं, तो आपको git addपहले उन्हें हटाने (या ) की आवश्यकता है । इसके बारे में थोड़ा पढ़ें git clean, इससे आपको मदद मिल सकती है।
रेनाटो ज़नोन

भाग जाने के बाद git merge ours, अगर कुछ संघर्ष फाइलें हैं, तो क्या कोई लॉग होगा? और क्या मैं ट्रैक कर सकता हूं git merge ours?
zx1986

19

मैं इसका उपयोग करता हूं,

git fetch --prune
git reset --hard origin/master

2
जब मैं चाहता था कि मास्टर ब्रांच के साथ ओवरराइड करने के लिए इस समाधान ने मुझे अनपेक्षित संघर्षों को ठीक करने में मदद की। मैं git रीसेट का उपयोग करता था - मास्टर (स्थानीय से)
जुआन मेंडेज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.