version control - Git - update only files existing in current branch -


मेरे स्थानीय रेपो - मास्टर (कोर फाइल) और master_with_adds (कोर + अतिरिक्त विन्यास) में 2 शाखाएं हैं

  • स्वामी
    • सिस्टम /
    • लिब्स /
  • master_with_adds
    • सिस्टम /
    • लिब्स /
    • जोड़ता है

सभी 2 शाखाओं में एक ही फाइल होती है लेकिन master_with_adds में अतिरिक्त फ़ोल्डर होते हैं अब मैंने master_with_adds पर स्विच कर दिया, कुछ बदलाव करें और इसे कम करें। मैं अपने मास्टर शाखा को केवल मास्टर में मौजूद फ़ाइलों के साथ कैसे अपडेट कर सकता हूं? अर्थात् मुझे केवल सिस्टम और libs , फ़ोल्डर जोड़ता है को कॉपी नहीं किया जाना चाहिए।

समाधान: मैंने यदि आपने जो बदलावों को लाया है, उन्हें यहां जोड़ना और निकालना शामिल नहीं है, तो आप यहां उत्तर पा सकते हैं

<पूर्व> git चेकआउट मास्टर git ls-files -z \ | Xargs -0 git चेकआउट master_with_adds -

और आप कर रहे हैं यदि आप अतिरिक्त जोड़ना चाहते हैं और निकाले जाने का आसान तरीका संभवतः हाथ से करना है, यहां से शुरू करना है, यद्यपि आप पूरी तरह से अपने कोड के एक साइडबैंड इंडेक्स का निर्माण करने के लिए GIT_INDEX_FILE पर्यावरण चर का उपयोग करके पूरी प्रक्रिया को लागू कर सकते हैं git ls-tree आउटपुट को git update-index --index-info को खिलाकर वांछित राज्य, फिर git write-tree आईएनजी कि, और संक्रमण को पूरा करने के लिए परिणामी वृक्ष के लिए git read-tree -um आईएनजी। वह मुझे थोड़ी अधिक उछाल के रूप में मारता है।


Comments

Popular posts from this blog

sqlite3 - UPDATE a table from the SELECT of another one -

c# - Showing a SelectedItem's Property -

javascript - Render HTML after each iteration in loop -