मैं कुछ Git सवाल यहाँ पढ़ा है, लेकिन यह एक का उत्तर नहीं मिल सकता है:Git: सार्वजनिक और निजी शाखाओं मर्ज करते हुए, जबकि कुछ फ़ाइलों दोनों शाखाओं में हाथ लगाए बिना
मैं एक सार्वजनिक और निजी है शाखाएं जहां मैं कुछ फाइलों को अलग करने की अनुमति देना चाहता हूं।
वे पासवर्ड और मेरे स्थानीय अनुकूलन के साथ कॉन्फ़िगरेशन फ़ाइलें हैं।
मैं शाखाओं को दोनों तरीकों से विलय करने में सक्षम होना चाहता हूं: निजी से सार्वजनिक और पीछे तक, लेकिन मैं कभी भी उन विशिष्ट फ़ाइलों को स्वचालित रूप से विलय नहीं करना चाहता हूं।
क्या इस तरह गिट स्थापित करने का कोई तरीका है? मुझे एक स्वचालित समाधान ढूंढना अच्छा लगेगा :) - ताकि विलय सामान्य रूप से किया जा सके।
संपादित करें: यहाँ समाधान है कि
मेरे लिए केवल अप्रत्याशित बात यह थी कि "सुरक्षा मर्ज" काम कर फ़ाइलें के बाद ही शुरू होता है (gitattribute पर सलाह के लिए VonC के लिए धन्यवाद) मेरे लिए काम किया है दो शाखाओं में अलग हुए, नहीं तुरंत बाद निम्नलिखित विन्यास लागू किया गया था
.gitattributes या .git/जानकारी/विशेषताओं (Git के साथ ट्रैक अगर आप इस साझा करना चाहते हैं):
file1 merge=keepmine
path/file2 merge=keepmine
keepmine नामित कस्टम मर्ज प्रबंधक सिर्फ एक do-कुछ भी नहीं आदेश चयनित फ़ाइलों पर आंतरिक मर्ज चालक के बजाय कहा जाता है, इसमें वे
जब सार्वजनिक शाखा को निजी से विलय मैं आमतौर पर git merge --squash private
कर नीचे सेट किया गया है । इस तरह निजी संपादन सार्वजनिक शाखा पर गिट इतिहास में नहीं मिलेगा।
.git/config:
#public repository
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = <public repo git url>
#private repository
#has to set up with git init and populated with the initial commit to branch mybranch
[remote "private"]
push = +:
url = /path/to/local/private/repo
[merge "keepmine"]
name = dont_merge_selected_files
driver = echo %O %A %B
[branch "master"]
remote = origin
merge = refs/heads/master
#private branch settings
[branch "mybranch"]
remote = private
merge = refs/heads/mybranch
वहाँ सुधार करने के लिए इस टिप्पणी कृपया
यह काम करता है, धन्यवाद! – Evgeny
यह केवल तब काम करता है जब फ़ाइल दोनों शाखाओं में बदल जाती है। एक बार विलय के साथ विलय का समाधान हो जाने के बाद, दूसरी शाखा में निम्नलिखित विलय रिकर्स द्वारा हल किया जाएगा। – f3r3nc