मैं TortoiseGit के साथ गलत संदेश कैसे संपादित करूं?


106

मैं tortoiseGIT के साथ प्रतिबद्ध संदेश कैसे संपादित कर सकता हूं? सवाल बहुत के समान है इस लेकिन मैं कंसोल के साथ नहीं TortoiseGit साथ ऐसा करना चाहते हैं, यह संभव है?


जवाबों:


160

यदि कमिट वर्तमान शाखा का प्रमुख है, तो यह आसान है।

  1. प्रसंग मेनू -> Git प्रतिबद्ध
  2. टिक "संशोधन अंतिम प्रतिबद्ध" चेकबॉक्स
  3. अपने प्रतिबद्ध संदेश को सही करें
  4. ठीक है

यदि कमेटी दूसरी ब्रांच का प्रमुख है, तो पहले उस ब्रांच में जाएं।

  1. संदर्भ मेनू -> TortoiseGit -> स्विच / चेकआउट
  2. शाखा का नाम चुनें
  3. ठीक है
  4. संदेश को संशोधित करने के लिए 1-4 चरणों का पालन करें

यदि प्रतिबद्ध सिर के बीच में किसी भी मर्ज के बिना बीच में है, तो आपको रीसेट, संशोधन और चेरी-पिक की आवश्यकता है

  1. संदर्भ मेनू -> कछुआ -> लॉग
  2. प्रतिबद्ध का चयन करें -> संदर्भ मेनू -> रीसेट
  3. हार्ड रीसेट ( यह चयनित कमिट के साथ-साथ वर्किंग डायरेक्टरी में किसी भी अन-कमिटेड बदलाव के ऊपर आने वाले सभी कामों को छोड़ देगा )
  4. ठीक है
  5. संदेश को संशोधित करने के लिए 1-4 चरणों का पालन करें
  6. इसके ऊपर सिर से एक ओर का चयन करें -> संदर्भ मेनू -> चेरी-पिक
  7. जारी रखें

12
मुझे वास्तव में TortoiseSVN के "प्रवेश लॉग संदेश" की याद आती है। कोई मौका वे इस तरह की सुविधा जोड़ देंगे?
बेनोइट ब्लांचन

3
मैं चरण 6 पर खो गया हूं, "सिर से एक से ऊपर एक का चयन करें" का क्या मतलब है? यह संदर्भ मेनू में एक विकल्प है?
फ्लेथसो

1
चरण 6 पर भी हार गए। कहीं भी चेरी लेने का विकल्प नहीं है, और मैं किसी भी मामले में ऊपर दिए गए कमिट को नहीं देख सकता (बस काम करने वाले परिवर्तन को बताता है, जिनमें से वास्तव में कोई भी नहीं है)
रॉबर्ट इवान

13
डाउनवोट क्योंकि मुझे लगता है कि इस मामले में सुझाव जहां कमेटी बीच में है, उसने मुझे उस कोड तक अपना कोड बदलने से रोक दिया है, जो कई हफ्तों का काम है।
शमूएल

8
चेतावनी: जिस मोड को आप संशोधित करना चाहते हैं, उसे रीसेट करने से पहले एक अस्थायी शाखा नाम सेट करने के लिए "इस संस्करण में शाखा बनाएँ" का उपयोग करें। अन्यथा, आप इस बिंदु से ऊपर आने वाले सभी कमियों को खोने का जोखिम उठाते हैं। (यदि यह पहले से ही आपके साथ हुआ है, git reflogतो आप उन्हें पुनः प्राप्त करने में मदद करेंगे)।
स्टीव पिचर

19

जब मामला बीच में होता है, तो मैं अत्यधिक सलाह देता हूं कि लिनक्विज़ द्वारा दिए गए निर्देशों का पालन न करें, कारण के लिए उसके जवाब के नीचे की टिप्पणियाँ देखें।

  1. आप TortoiseGit के साथ git कमांड लाइन का उपयोग कर सकते हैं और इससे कोई समस्या नहीं होगी: क्या मैं कमांड-लाइन Git टूल और TortoiseGit का एक साथ उपयोग कर सकता हूं?

  2. इस यूट्यूब वीडियो यह वास्तव में अच्छी तरह से बताते हैं: http://youtu.be/4YjKY0u9Z6I । मूल रूप से git rebase -i का उपयोग करें और फिर बस प्रतिबद्ध संदेश "reword" करें।

अपडेट: मेरा मानना ​​है कि आप linquize द्वारा सुझाए गए हार्ड रीसेट से खोए हुए कमिट्स को पुनः प्राप्त कर सकते हैं, वेन का जवाब यहां देखें: मैं Git रिबास का उपयोग करके कॉम को कैसे पुनः व्यवस्थित / संयोजित कर सकता हूं?


7
माना। git मुझे अविश्वसनीय रूप से लंबे समय तक सीखने में लग रहा है कि कैसे उपयोग करना है, SVN इतना सरल था। Git की अवधारणा सरल है, लेकिन इसका उपयोग नहीं है।
शमूएल

TortoiseGit भी इंटरैक्टिव रिबास प्रदान करता है, आपको इसके लिए कमांड लाइन का उपयोग करने की आवश्यकता नहीं है
पीटर

13

मैं कहूंगा कि किसी भी प्रतिबद्ध संदेश में संशोधन करने के लिए सबसे अच्छा तरीका यह है कि force rebaseआप कछुए में विकल्प का उपयोग करें ।

इस जवाब को TortoiseGit के साथ हाउट रीमॉडिट्स (रिबास) पर देखें । एक ही विधि का उपयोग प्रतिबद्ध संदेशों को संपादित करने के लिए किया जा सकता है।

  • जब आप रिबेज डायलॉग में हों, तो उस कमेंट पर राइट-क्लिक करें जिसे आप एडिट करना चाहते हैं और Editऑप्शन को सिलेक्ट करना चाहते हैं । आप कई कमिटों को संपादित करने का विकल्प चुन सकते हैं।
  • Start Rebaseबटन पर क्लिक करें।
  • रिबेस उन कमिट्स पर विराम लगाएगा, जिन्हें आपने चिह्नित किया है Edit
  • Commit Messageसबसे नीचे टैब पर क्लिक करें और संदेश को संपादित करें
  • Amendजारी रखने के लिए बटन पर क्लिक करें
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.