मैं मैगिट कमिट स्क्रीन में डिफ़ॉल्ट रूप से कैसे '--verbose' ध्वज सक्षम कर सकता हूं?


16

अभी, ccमैजिट-मोड में सिर्फ दबाने के बजाय , मुझे c-vcसक्षम करने के लिए हर बार प्रेस करना होगा --verbose

क्या इसे डिफ़ॉल्ट रूप से सक्षम करना संभव है?

जवाबों:


18

शुरुआत करते हुए v2.1.0, मैगिट magit-popup.elऐसे "पॉपअप बफ़र्स" या "प्रीफ़िक्स-इनफ़िक्स-प्रत्यय कॉम्बोस " को लागू करने के लिए लाइब्रेरी का उपयोग करता है । इसके नाम के बावजूद, उस लाइब्रेरी का उपयोग मैगिट से संबंधित पैकेजों के द्वारा नहीं किया जा सकता है और इसलिए इसे एक अलग एल्पा पैकेज के रूप में उपलब्ध कराया जाता है। यहां तक ​​कि अब इसका अपना मैनुअल है!

डिफ़ॉल्ट तर्क अब सीधे पॉपअप बफर से सेट किए जा सकते हैं। ऐसा करने के लिए हमेशा उपयोग --verboseकरने के लिए:

  1. c कमिटिंग पॉपअप दिखाएं
  2. - v चालू करो --verbose
  3. C-x C-sडिफॉल्ट (कस्टम विकल्प में magit-commit-arguments) के रूप में वर्तमान में सेट तर्कों को सहेजें

डिफ़ॉल्ट रूप से सभी पॉपअप बफ़र्स "कॉमन कमांड्स" नामक एक अनुभाग के साथ समाप्त होते हैं। यदि नहीं, तो C-tइसे दिखाने के लिए उपयोग करें। आप शायद उस अनुभाग हर समय देखने के लिए नहीं करना चाहते हैं और इसलिए स्थापित करना चाहिए magit-popup-show-common-commandsकरने के लिए nil

बेशक magit-commit-arguments, कस्टम इंटरफ़ेस setq, या का उपयोग करके ऐसे और अन्य चर का मान सेट करना भी संभव है add-to-list। लेकिन मैं इसके खिलाफ सलाह देता हूं, क्योंकि इससे मक्खी को चूक को बदलना असंभव हो जाएगा।


7

जहां तक ​​मैं बता सकता हूं कि मैगिट "डिफ़ॉल्ट" विकल्पों पर नज़र नहीं रखता है, लेकिन हम हर बार कमिटिंग बफर पॉप अप करने के लिए इसे "प्रेस -v" कर सकते हैं :

(advice-add #'magit-key-mode-popup-committing :after
            (lambda ()
              (magit-key-mode-toggle-option (quote committing) "--verbose")))

सलाह देने के लिए क्या कार्य करना है, मैंने एक magic-statusबफर खोला और दबाया C-h k c। यह मेरे लिए नेतृत्व किया magit-key-mode-popup-committing। तब (स्वीकार हो रहे हैं बफर अभी भी प्रदर्शित के साथ) मैं दबाया C-h k -vखोजने के लिए lambdaजब प्रपत्र MAGIT कॉल आप प्रेस -vस्वीकार हो रहे हैं विंडो में।

अद्यतन: मैंने इस उत्तर को स्वतंत्र रूप से लिखा था, लेकिन क्या मुझे प्रारंभिक रूप से चयनित किया जा सकता है? वहां दिया गया उत्तर और उस उत्तर पर टिप्पणी करता है।


1
यह तो दिलचस्प है! आपको यह समझाने के लिए भी धन्यवाद कि आपने उन कार्यों को कैसे पाया :)
विले ई। कोयोट

@ डॉगबर्ट: कृपया अपडेट किए गए उत्तर में लिंक देखें यदि आप यह जानना चाहते हैं कि दूसरों ने डिफ़ॉल्ट गिट विकल्पों के बारे में सोचा था कि बहुत पहले नहीं। :-) (मुझे नहीं पता कि मैं कल कैसे चूक गया।)
कांस्टेंटाइन

4

मैगिट के संस्करणों में जो क्षणिक (फरवरी 2019 या उसके बाद) का उपयोग करते हैं, झंडा सेट करते हैं, और फिर ट्रांसफ़ॉर्म बफर में रहते हुए भी बचत करते हैं।

तो प्रतिबद्ध के लिए, महत्वपूर्ण अनुक्रम कुछ इस तरह होगा

C-x g # start magit
s # to stage changes
c # start commiting
-v # enable verbose
C-x C-s # Save the setting persistently across sessions
c # do the actual commit

उसके बाद, अगली बार प्रतिबद्ध लागू होने के बाद, क्रिया अभी भी सेट की जाएगी। (आपको प्रतिबद्ध पूरा करने की ज़रूरत नहीं है, और बचत करने के बाद बाहर निकल सकते हैं C-x C-s।)

वास्तविक डिफ़ॉल्ट को एक transient/निर्देशिका में सहेजा जाता है .emacs.d/

क्षणिक मैनुअल देखें https://magit.vc/manual/transient.html#Saving-Values


0

यह आप क्या चाहते हैं (अपनी प्रतिबद्ध बफ़र अंतर), आप का विस्तार करने में डिफ मंचन MAGIT सेट कर सकते हैं नहीं है जबकि स्थिति खिड़की:

(setq magit-expand-staged-on-commit 'full)

मैगिट वर्कफ़्लो हमेशा ओपन स्टेटस बफर लगता है और फिर कमिट बफर के साथ ओपन स्प्लिट, आप हमेशा दो बफ़र्स के साथ प्रदर्शित होते हैं। उपरोक्त सेटिंग दूसरी (पहले उपयोगी नहीं) बफर को आपके अंतर को प्रदर्शित करेगी।

आप tकेवल अलग हेडर का विस्तार करने के लिए भी उपयोग कर सकते हैं (इसलिए यह लाइन संख्या दिखाता है):

(setq magit-expand-staged-on-commit t)

अपना अंतर लिखते समय, आप स्थिति बफ़र पर स्विच कर सकते हैं और TABडिफरेंसेस को विस्तारित (या गुना) करने के लिए उपयोग कर सकते हैं ।


वैकल्पिक रूप से, आप C-c C-dएक भिन्न के साथ एक और बफर खोलने के लिए प्रतिबद्ध बफर से उपयोग कर सकते हैं magit-diff-staged। ( इस मुद्दे को देखें ।)


0

magitसंस्करण के रूप में 2.1, आप इसे अपने विन्यास में उपयोग कर सकते हैं:

;; When commiting enable verbose mode by default.
(setq magit-commit-arguments (quote ("--verbose")))

आपको ऐसा नहीं करना चाहिए। मेरा जवाब देखिए।
तारसियस

@tarsius आपके पास एक मान्य बिंदु है। मेरा उपयोग यह है कि मैं अपने डॉटफाइल्स को कई कंप्यूटरों के बीच सिंक करता हूं और जब मैं डिफ़ॉल्ट सेट करता हूं तो यह मेरे सभी कंप्यूटरों पर डिफ़ॉल्ट होना चाहिए। अगर मैं इसे बदलना चाहता हूं, तो मैं इसे अपने कॉन्फिगर में बदल दूंगा और यह मेरे सभी कंप्यूटरों में सिंक हो जाएगा।
मैकु मोरी

1
ओह, और मैं कस्टम विकल्पों का उपयोग नहीं करता क्योंकि यह मेरे विन्यास को दस्तावेज़ में कठिन बनाता है। मैं स्पष्ट रूप से सब कुछ सेट करना पसंद करता हूं।
मायकु मोरी

इसके अलावा, सेटिंग --no-verifyउपयोगी होती है जब आपके पास ऐसे प्रोजेक्ट होते हैं जो गिट हुक का उपयोग करते हैं (सावधानी के साथ उपयोग करें, जाहिर है)।
दरोगांस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.