मैं कुछ बहुत ही गलत गलत कर रहा हूं। मैं एक साधारण पैच फ़ाइल तैयार करने की कोशिश कर रहा हूं, इसलिए मैं कुछ बदलावों को फिर से लागू कर सकता हूं:
$ git diff > before
$ git diff something_here > save.patch
$ git checkout .
$ patch < save.patch
$ git diff > after
$ diff before after
$
something_here रिक्त के साथ यह लगभग काम करता है, लेकिन फ़ाइल नाम सही नहीं हैं। मुझे लगता है कि मैं बस कुछ विकल्प याद कर रहा हूं।
वास्तविक जीवन में, मैं चेकआउट के बाद मर्ज करने जा रहा हूं, इसलिए पैच वहां विफल हो सकता है, लेकिन आप देखते हैं कि मुझे क्या मिल रहा है।
गलत प्रश्न पूछने के लिए मेरी गलती को संपादित करें । वास्तविक सवाल यह है कि मैं अपने परिवर्तनों को दूर करना चाहता हूं, एक मर्ज करना चाहता हूं, फिर यदि संभव हो तो परिवर्तनों को फिर से लागू करें? मैंने इसे गलत तरीके से पूछा क्योंकि मैं इन प्रकार की समस्याओं को हल करने के लिए पैच का उपयोग करने के लिए उपयोग किया जाता हूं और git diffऐसा लगता है कि यह वही है जो मुझे करना चाहता था।
चार्ल्स बेली की टिप्पणी का सही उत्तर था। मेरे लिए, git-apply करना सही बात है (git-stash मुझे ज़रूरत से ज़्यादा भारी-भरकम लगता है और रिबासिंग और बंडल निश्चित रूप से मेरे वर्तमान कौशल स्तर से परे है।) मैं चार्ल्स द्वारा दिए गए उत्तर को स्वीकार करने जा रहा हूं (क्योंकि आप एक टिप्पणी स्वीकार नहीं कर सकते)। सभी सुझावों के लिए शुक्रिया।
संपादित करें, 6 साल बाद
जैसा कि विषय से परिचित कोई भी जानता है, मैंने कठिनाई का अनुमान लगाया git stash। बहुत अधिक हर दिन या तो, मैं निम्नलिखित अनुक्रम का उपयोग करेगा:
$ git stash
$ git merge
$ git stash pop
git stashया अन्य गिट टूल के बजाय पैच की आवश्यकता है ?
git stashआप जो करने की कोशिश कर रहे हैं, उसके लिए सबसे आसान समाधान है, लेकिन उस काम के बहुत सारे दृष्टिकोण हैं।
git-svn।
patchसे बजाय उपयोग करना चाहते हैंgit apply?