मेरे पास मास्टर की दो शाखाएं हैं, प्रत्येक एक अलग सुविधा के लिए है, और फिर मेरे पास एक संश्लेषण शाखा है जो दोनों को जोड़ती है। मैंने संश्लेषण शाखा में कुछ किया है, लेकिन अब मैं देखता हूं कि मैंने उस विशेषता के लिए विशेष रूप से शाखाओं में से एक में परिवर्तन किया होगा। क्या यह गलती से कहीं और अनुपयोगी/लागू करने का कोई तरीका है?गिट में, मैं एक शाखा से एक प्रतिबद्धता कैसे हटा सकता हूं और इसे एक अलग शाखा में लागू कर सकता हूं?
21
A
उत्तर
27
चेरी-पिक प्रतिबद्ध शाखा को लक्षित करने और स्रोत शाखा को रीसेट करने के लिए प्रतिबद्ध है। मान लिया जाये कि, है न ले जाने के लिए नवीनतम source
शाखा से target
के लिए प्रतिबद्ध चाहते हैं,:
git checkout target
git cherry-pick source
git checkout source
git reset --hard source^
तो प्रतिबद्ध नहीं था पिछले, आप पिछले आदेश के बजाय git rebase -i
का उपयोग करें और विशिष्ट चयन करना होगा के लिए नाम के लिए प्रतिबद्ध आपका cherry-pick
।
2
आम तौर पर, जब मैं कुछ इस तरह करते हैं, मैं लूंगा:
- Git diff (जैसे
git diff HEAD^ HEAD
) - का उपयोग कर एक रिवर्स पैच फ़ाइल बनाएँ शाखा को यह रिवर्स पैच लागू करें मैं परिवर्तन निकालना चाहते हैं से।
- चेक बाहर शाखा मैं करता लागू करने के बारे
- उपयोग
git cherry-pick
परिवर्तन चाहते हैं लागू करने
मेरा मानना है कि वहाँ एक आसान तरीका है, लेकिन मैं यह पसंद करते हैं के बाद से मैं का उपयोग करें (और याद) diff/चेरी-पिक कमांड
+3
चरण 1 + 2 == गीट वापस लाएं – Dustin
संबंधित मुद्दे
- 1. मैं गिट में एक अनाम शाखा में एक प्रतिबद्धता कैसे प्राप्त कर सकता हूं?
- 2. मैं गिट में एक प्रतिबद्धता कैसे उलटा सकता हूं?
- 3. मैं गिट में रिमोट शाखा कैसे हटा सकता हूं?
- 4. मैं गिट में एक पुरानी प्रतिबद्धता कैसे कर सकता हूं?
- 5. मैं गिट में एक शाखा से दूसरे शाखा में एक विशिष्ट प्रतिबद्धता कैसे विलय करूं?
- 6. मैं वर्तमान में एक स्थानीय गिट शाखा को कैसे हटा सकता हूं (या विलय) कर सकता हूं?
- 7. मैं गिटहब से शाखा कैसे हटा सकता हूं?
- 8. एक अलग गिट शाखा
- 9. मैं एक मनमानी शाखा संग्रह कैसे कर सकता हूं?
- 10. गिट: एक अलग स्थानीय शाखा
- 11. मैं एसवीएन में कैसे शाखा कर सकता हूं और इसे अपने svn: बाहरी फ़ोल्डरों को भी शाखा बना सकता हूं?
- 12. क्या मैं सबवर्सन में एक प्रतिबद्धता हटा सकता हूं?
- 13. मैं एक गिट भंडार कैसे क्लोन कर सकता हूं और रिमोट्स रख सकता हूं?
- 14. क्या गिट में एक नई शाखा बनाते समय मैं एक संदेश/नोट/टिप्पणी जोड़ सकता हूं?
- 15. मैं रिमोट में मास्टर शाखा में स्थानीय गिट शाखा को कैसे दबा सकता हूं?
- 16. क्या मैं सक्रिय से अलग शाखा में एक फाइल खोल सकता हूं?
- 17. गिट एक और शाखा
- 18. एक शाखा में गिट क्लोन
- 19. मैंने गलती से एक गिट स्थानीय शाखा बनाई - जिसेट्रैक कहा जाता है, मैं इसे कैसे हटा सकता हूं?
- 20. मैं अप्रशिक्षित गिट को कैसे हटा सकता हूं?
- 21. गिट शाखा एक नई प्रतिबद्धता में भिन्न होती है
- 22. क्या मैं एक कमांड में गिट रिमोट शाखा को नष्ट और पुन: बना सकता हूं?
- 23. क्या मैं एक नई नामांकित शाखा में एकाधिक मर्कुरियल सब्रेप में परिवर्तन कर सकता हूं?
- 24. गिट शाखा
- 25. पिछली एन गिट को एक अलग शाखा
- 26. सबवर्जन: क्या मैं चेकआउट कर सकता हूं, संशोधित कर सकता हूं, और फिर इसे शाखा बना सकता हूं?
- 27. मैं स्थानीय गिट भंडार में रिमोट शाखा को कैसे हटा सकता हूं?
- 28. मैं गिट में एक प्रतिबद्धता का बैकपोर्ट कैसे करूं?
- 29. git-svn: मैं गिट के माध्यम से एक नई svn शाखा कैसे बना सकता हूं?
- 30. गिट: वर्तमान शाखा में मौजूदा शाखा में प्रगति की वर्तमान स्थिति में एक नई शाखा
धन्यवाद! बहुत अच्छा काम करता है। – prismofeverything
ध्यान दें कि ** इतिहास पुनर्लेखन ** को रीसेट/रीबेस करें, इसलिए इतिहास का प्रकाशित होने पर उनका उपयोग नहीं किया जाना चाहिए - तो आपको इसके बजाय गिट-रीवर्ट का उपयोग करना होगा। –