में ईमेल पता बदलें मैं थोड़ी देर के लिए एक गिट भंडार पर काम कर रहा हूं और कुछ काम करता हूं। मैं अपने php फाइलों में प्रलेखन ब्लॉकों का उपयोग किया गया है, मेरे निजी ईमेल पते सहित, इस तरह:गिट इतिहास
/**
* Bla bla bla.
*
* @author: Nic <[email protected]>
*/
अब मैं एक नया ईमेल पता बनाया है और प्रलेखन ब्लॉक अद्यतन, नए के साथ पुराने पते की जगह है। लेकिन यह परिवर्तन केवल उस स्थान पर लागू होता है जहां मैंने दस्तावेज़ बदल दिया था।
मैं गिट के इतिहास से पुराने ईमेल पते को पूरी तरह से कैसे हटा सकता हूं और नए पते के साथ सभी उदाहरणों को प्रतिस्थापित कर सकता हूं?
मैंने this blog post का उपयोग करके गिट फ़िल्टर-शाखा का उपयोग करने की कोशिश की है लेकिन सफलता के बिना।
git filter-branch --tree-filter 'git ls-files -z "*.php" |xargs -0 perl -p -i -e "s#[email protected]#[email protected]#g"' -- --all
Usage: git core\git-filter-branch [--env-filter <command>] [--tree-filter <command>]
[--index-filter <command>] [--parent-filter <command>]
[--msg-filter <command>] [--commit-filter <command>]
[--tag-name-filter <command>] [--subdirectory-filter <directory>]
[--original <namespace>] [-d <directory>] [-f | --force]
[<rev-list options>...]
यह हो सकता है कि ईमेल पतों की विशेष वर्ण (@ और।) नियमित अभिव्यक्ति अप खिलवाड़ कर रहे हैं: मैं निम्नलिखित परिणाम प्राप्त? इसके अलावा मुझे नहीं पता कि क्या गलत हो रहा है, किसी भी मदद की सराहना की जाती है!
यह केवल काम के लेखक को बदल देगा, सवाल फ़ाइल सामग्री में ईमेल पता बदलने का एक तरीका ढूंढ रहा है। – qqx
मुझे पहले से ही एक मिला है लेकिन क्यूएक्सएक्स ने कहा है कि यह प्रतिबद्धता के मेल पते को बदलता है, न कि फ़ाइल के अंदर दस्तावेज़ ब्लॉक। –
यह "==" के बजाय "=" के साथ मेरे लिए ठीक काम करता है। –