मेरे पास दो शाखाएं A
और B
हैं। दोनों में एक सबमिशन (फ़ोल्डर sub
में) होता है, हालांकि अलग-अलग कामों पर (जो एक से दूसरे तक तेजी से आगे नहीं बढ़ते)।गिट सबमिशन संघर्ष को हल करने के लिए कैसे करें यदि सबमिशन प्रारंभ नहीं किया गया है
A B
|/
BASE
मैंने A
की जांच की है, लेकिन सबमिशन अभी तक शुरू नहीं हुआ है। अब मैं B
मर्ज करता हूं और मुझे सबमिशन पर एक संघर्ष मिलता है।
$ git status
Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: sub
जारी git checkout --ours sub
कुछ नहीं करता है (यदि submodule आरंभ नहीं हो जाता यह काम करता है, यह भी git checkout-index -f --stage=2 -- sub
काम नहीं करता है)। git add sub
त्रुटि error: pathspec 'sub' did not match any file(s) known to git.
का कारण बनता है।
$ git diff sub
diff --cc sub
index 533da4e,ab2af77..0000000
--- a/sub
+++ b/sub
@@@ -1,1 -1,1 +1,1 @@@
- Subproject commit 533da4ea00703f4ad6d5518e1ce81d20261c40c0
-Subproject commit ab2af775ec467ebb328a7374653f247920f258f3
++Subproject commit 0000000000000000000000000000000000000000
git submodule init -- sub
कुछ भी नहीं करता है। git submodule update --init --force -- sub
काम नहीं करता है: Skipping unmerged submodule sub
।
तो, मैं इस सबमिशन संघर्ष को कैसे हल कर सकता हूं (मर्ज को निरस्त किए बिना और सबमिशन शुरू करने के बाद पुनः प्रयास करें)?
अच्छा "यह सामान्य मर्ज की तरह काम करता है", हालांकि 'गिट चेकआउट --ours' और' git add' काम नहीं करता है। "उस पथ पर सही सामग्री की आपूर्ति कैसे करें"?- "केवल एक चीज है कि उस रास्ते पर रेपो को हेड में सही प्रतिबद्ध आईडी के साथ रखना है" - लेकिन मैं यह कैसे प्राप्त कर सकता हूं कि सबमिशन शुरू करने के रूप में काम नहीं करता है? – MrTux
एक सबमिशन सिर्फ एक रेपो है। "केवल एकमात्र चीज है कि उस पथ पर ** रेपो ** होना चाहिए"। 'गिट क्लोन यू: // आर/एल-बी $ yourbranch पथ/से/रेपो; गिट जोड़ें पथ/से/रेपो; गिट प्रतिबद्ध -एम किया '। – jthill
यह विकल्प मेरे लिए काम किया। मैंने बस सबमिशन स्थान में लापता रेपो के सही संस्करण को क्लोन किया और फिर विलय हो गया। –