Git प्रतिबद्ध संदेश में संशोधन करने के लिए IntelliJ का उपयोग करना


105

क्या कोई git प्रतिबद्ध संदेश का उपयोग करके संशोधन कर सकता है IntelliJ, या कमांड लाइन का सहारा लेना चाहिए?

यह कैसे किया जा सकता है कृपया?

जवाबों:


86

देखें => टूल विंडोज => संस्करण नियंत्रण। ( विंडोज (Alt + 9) / OS X (Cmd + 9) )

इंटेलीजे 2017.1 और उच्च => जाओ करने के लिए लॉग इन करें और दाएँ क्लिक + reword या F2 दबाएं।

इंटेलीज नाम बदलकर किया

जब आप एक ही शाखा पर हों, (आपकी जाँच की गई शाखा समान है)


4
यह वेबस्टॉर्म 2017.3 के साथ टिप्पणियों को संशोधित करने के लिए एकमात्र तरीका है (शायद कमांड लाइन के बगल में)। यह संस्करण नियंत्रण विंडो Alt + 9, या दृश्य-> उपकरण Windows-> संस्करण नियंत्रण के माध्यम से प्रकट होता है।
CODE-REaD

3
आइडिया 2017.3 में वर्णित कमांड का नाम "नाम बदलें" के बजाय "रिवॉर्ड ..." रखा गया है (जैसा कि स्क्रीनशॉट में दिखाया गया है :-))। F2 भी काम करता है।
वोल्कर सीबट

1
किसी को भी एक विचार क्यों "संपादित संदेश को संपादित करें ..." मेरे इंटेलीज (2019.3.1) में स्पष्ट है?
कोल्ड_क्लास

@Cold_Class क्या यह आपका प्रतिबद्ध संदेश था? मैं एक मिल गया है जो एक मर्ज है। जैसे Merge branch 'develop' of REPO_URL into BRANCH_NAMEआपका क्या मतलब है?
स्टीफन रीन

@StefanRein - मैं आज इस मुद्दे पर आ रहा था और मुझे एहसास हुआ कि मैं चेरी पिक मोड में था - इसे निरस्त किया जाना है
लॉस्ट क्रॉचेट

72

संशोधन का समर्थन किया जाता है: "कमिट चेंजेस" को लागू करें और कमेंट डायलॉग में "अमेंड कमिट" चेकबॉक्स चुनें। फिर "कमिट" बटन दबाएं, और प्रतिबद्ध को पिछले एक में संशोधन किया जाएगा।

हालाँकि, समर्थन सीमित है:

  • आप इस संशोधन के विवरण को नहीं देख सकते हैं,
  • यदि आपके पास कोई अनकम्फर्टेबल बदलाव नहीं हैं (उदाहरण के लिए, आप सिर्फ पिछले बदलाव के संदेश को इसमें और बदलावों को जोड़े बिना बदलना चाहते हैं), तो आप "कमिट" नहीं कर पाएंगे।

12
दूसरी समस्या के खिलाफ सामान्य वर्कअराउंड कुछ महत्वपूर्ण अक्षर (रिक्त स्थान आदि) को एक फ़ाइल में जोड़ रहा है ताकि आप कमिट कर
सकें

JetBrains समर्थन ने मुझे IDEA-81428 और IDEA-57979 वृद्धि अनुरोधों के लिए संदर्भित किया । यह सवाल और जवाब PyCharm पर भी लागू होते हैं।
Wil Cooley

10
यह उत्तर अब 2017.2 के बाद से सच नहीं है। आप इसे अब आसानी से कर सकते हैं: Version Controlपैनल> Logटैब> अंतिम प्रतिबद्ध चुनें> F2 दबाएं। jetbrains.com/idea/whatsnew/#v2017-2-version-control
DLight

39

अंत में इसके लिए एक वर्कअराउंड मिला .. यह मुद्दा मुझे दिनों तक परेशान कर रहा था।

  1. संस्करण नियंत्रण-टैब टैब पर जाएं
  2. संस्करण का चयन करें, आपके परिवर्तनों के नीचे एक। राइट क्लिक करें और कहें "वर्तमान शाखा को यहां रीसेट करें"
  3. "सॉफ्ट" चुनें और रीसेट पर क्लिक करें, यह बहुत महत्वपूर्ण है, आपको केवल सॉफ्ट पर क्लिक करने की आवश्यकता है ताकि आपके परिवर्तन खो न जाएं।
  4. संस्करण नियंत्रण, स्थानीय परिवर्तनों की जांच करें, आपके परिवर्तन एक ही चैंजिस्ट में उपलब्ध होंगे
  5. परिवर्तन सूची पर राइट क्लिक करें और कमेट चुनें।
  6. यह आपको आपके पिछले प्रतिबद्ध संदेश को दिखाएगा, अब आप टिप्पणियों को संशोधित कर सकते हैं और कह सकते हैं कि कमिट और पुश करें

    Note: This solution uses android studio as intellij platform. 
    

1
मेरे लिए, IntelliJ 17.3 में, मैं संस्करण नियंत्रण में "रिवॉर्ड ... (F2)" मेनू आइटम का उपयोग कर सकता हूं: सीधे प्रतिबद्ध संदेश को संपादित करने के लिए लॉग इन करें।
मोग्रेन

28

आप अपने टर्मिनल फ़ोल्डर में भी जा सकते हैं जैसे कि पॉवरशेल, सेमी और बैश जैसे शेल (शेल) (आपके सिस्टम पर निर्भर करता है), और फिर टाइप करें:

git commit --amend -m "your new commit message"

3
और जब से इंटेलीज एक एकीकृत टर्मिनल प्रदान करता है, आपको आईडीई छोड़ने की ज़रूरत नहीं है। यह शायद सबसे तेज़ तरीका है।
अखरोट

14

रिबास के दौरान प्रतिबद्ध संदेश संपादित किए जा सकते हैं। आह्वान Rebaseसे आदेश VCSमेनू, शाखा सेटिंग्स की पुष्टि, तो रिबेस बटन क्लिक करें। आपको अपने अप्रकाशित कमिट की सूची के साथ प्रस्तुत किया जाएगा। rewordजिस संदेश को आप संपादित करना चाहते हैं उसके बाईं ओर ड्रॉप-डाउन से क्रिया चुनें ।

अन्य विद्रोह कार्यों पर विवरण के लिए इतिहास को फिर से लिखने पर git doc की जाँच करें ।


2
यह बेहतर विकल्पों में से एक है। यदि आपने पहले से ही अपने परिवर्तनों को मूल पर धकेल दिया है, तो IDE आपको चेतावनी देगा। यह एक अच्छी बात है, जैसे कि किसी ने पहले ही आपके द्वारा खींचे गए कमिट को खींच दिया था, कमिट में संशोधन करते हुए, भले ही सिर्फ कमिट मैसेज को बदल रहा हो, इसका मतलब होगा कि पिछली कमिटमेंट को खींचने वाले सभी को भी रिबास करने की जरूरत होगी। यह आमतौर पर एक "बुरी चीज" है।
क्रिस कॉगडन

3

लॉग टैब में, कमिट चुनें और F2 (रिवॉर्ड) दबाएँ। बस।


2

निष्पक्ष होने के लिए, ऐसा करने का सबसे तेज़ तरीका कमांड लाइन है। मुझे पता है कि ओपी इसे IntelliJ के माध्यम से करने के बारे में पूछ रहा था (यह कैसे मुझे यह सवाल मिला, मैं इसे PHPStorm में करने की कोशिश कर रहा था), लेकिन गंभीरता से, कमांड लाइन के माध्यम से इसका इतना आसान।

जब आपके टर्मिनल / कमांड प्रॉम्प्ट में सही फ़ोल्डर में

git commit --amend

फिर आपको अंतिम प्रतिबद्ध संदेश दिखाया जाएगा, बस टेक्स्ट को संपादित करें और फ़ाइल, काम को बचाएं!

यदि आप संपादक को बदलना चाहते हैं (यह vi को चूकता है), तो इस कमांड का उपयोग करें, अपनी पसंद के संपादक के लिए "विम" को बदलना।

git config --global core.editor "vim"

विंडोज़ उपयोगकर्ता जो चाहते हैं ...

git config --global core.editor "notepad"

स्रोत: https://help.github.com/articles/changing-a-commit-message/


1
आपका उत्तर अन्य लोगों के समान है, और एक कम सुविधाजनक तरीका भी लाता है। git commit --amend -m my_new_messageकमांड लाइन से सीधे प्रतिबद्ध संदेश बदलने के लिए उपयोग किया जाता है।
क्रिस्टोफर जे।

मुझे लगता है कि यह अच्छा है। हम गलत संदेश के आधार पर संदेश को संशोधित कर सकते हैं। और "VI" संपादक भी अच्छा है।
लियो ली

@ChristopherJ। - क्षमायाचना, जब मैंने यह पोस्ट किया तो मुझे आपका उत्तर नहीं मिला। अगर मैं डिफ़ॉल्ट पसंद नहीं करता हूँ, तो मैं इसे संपादक के अलावा जोड़कर यहाँ छोड़ दूँगा।
स्टीव चिल्ड

2

मामले में, 2018.3 और 2017.1 के साथ भी ऐसा ही है

Alt + 9(संस्करण नियंत्रण विंडो)

और राइट क्लिक करें -> संदर्भ मेनू पर क्लिक करें "रिवॉर्ड ... F2 "

या

shorcut F2आप संदेश को संपादित कर सकते हैं।


1

JetBrains में Go to View -> Version Control-> यह स्क्रीन के नीचे संस्करण नियंत्रण लॉग टैब को खोलेगा Go to Logऔर आप उस कमिट को देख सकते हैं, जिस पर आपने अंतिम राइट क्लिक किया था, और चुनेंundo commit

बिंगो! आपने अपनी सारी प्रतिबद्धता वापस कर दी है और संदेश मिटा दिया गया है। यदि आप केवल कमिट मेसेज बदलना चाहते हैं, तो आप सॉफ्ट रीसेट करना भी चुन सकते हैं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.