सवाल मैं गिट को अपनी पसंद के संपादक का उपयोग करने के लिए कैसे उपयोग करूं?


मैं विम में अपने प्रतिबद्ध संदेश लिखना पसंद करूंगा, लेकिन यह उन्हें Emacs में खोल रहा है।

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


1899
2018-04-08 00:28


मूल


"गिट-गो से टिप्पणियां करने के लिए विम पर जाने के लिए गिट कैसे प्राप्त करें?" - Michael Burr
संबंधित (संभावित डुप्लिकेट): विंडोज़ पर गिट के साथ काम करने के लिए मैं एक संपादक कैसे स्थापित कर सकता हूं? - Steven Vascellaro


जवाब:


अगर आप संपादक को सेट करना चाहते हैं केवल गिट के लिए, या तो करें (आपको दोनों की आवश्यकता नहीं है):

  • सेट core.editor आपके गिट कॉन्फ़िगरेशन में: git config --global core.editor "vim"
  • ठीक GIT_EDITOR वातावरण विविधता: export GIT_EDITOR=vim

अगर आप गिट के लिए संपादक सेट करना चाहते हैं और अन्य कार्यक्रम भी, मानकीकृत सेट करें VISUAL तथा EDITOR पर्यावरण चर*:

export VISUAL=vim
export EDITOR="$VISUAL"

* दोनों को स्थापित करना जरूरी नहीं है, लेकिन कुछ प्रोग्राम अधिक सटीक उपयोग नहीं कर सकते हैं VISUAL। देख VISUAL बनाम EDITOR


शानदार पाठ के लिए: इसे जोड़ें .gitconfig--wait महत्वपूर्ण है। (यह शानदार में टेक्स्ट टाइप करने की अनुमति देता है और सहेजने / बंद घटना के लिए इंतजार करेगा।

[core]
    editor = 'subl' --wait

'subl' को निष्पादन योग्य के पूर्ण पथ से प्रतिस्थापित किया जा सकता है लेकिन आमतौर पर सही ढंग से स्थापित होने पर उपलब्ध होता है।


2677
2018-04-08 00:34



संपादक पर्यावरण चर का लाभ यह है कि कई अन्य कार्यक्रम भी इसका सम्मान करेंगे। - Boojum
ध्यान दें कि git config --global आपके व्यक्तिगत (प्रति-उपयोगकर्ता) गिट कॉन्फ़िगरेशन फ़ाइल को लिखेंगे। यूनिट्स पर यह है ~/.gitconfig। तो यह आपके सभी भंडारों के लिए इसे कॉन्फ़िगर करेगा। - Jakub Narębski
आप अंतिम प्रतिबद्ध संदेश में संशोधन करने की कोशिश करके सफलतापूर्वक इसे बदल सकते हैं। git commit --amend - Marco M.
यदि आप विंडोज़ में विकल्प # 1 कर रहे हैं और संपादक के पथ में रिक्त स्थान हैं (कहें, यदि यह प्रोग्राम फ़ाइलों के अंतर्गत है) तो अपने डबल-कोट्स के अंदर सिंगल-कोट्स को हराएं। जैसे "सी: / प्रोग्राम फ़ाइलें (x86) /Whatever/App.exe '" - कुछ के लिए स्पष्ट लेकिन यह मेरे लिए नहीं था! - Pablissimo
@Abramodj -w इसकी आवश्यकता नही है; -w {scriptout} बाद में फिर से चलाने के लिए संपादन करते समय आपके द्वारा टाइप किए गए सभी वर्ण सहेजता है। शायद आप इसे भ्रमित कर रहे हैं -f, कौन कौन से है विम के जीयूआई संस्करण को कॉल करते समय जरूरी है। यही है, अगर आप उपयोग करते हैं mvim, तो आपके द्वारा निर्दिष्ट संपादक होना चाहिए mvim -f बजाय mvim। - Rory O'Kane


इसे पेस्ट करें कॉपी करें:

git config --global core.editor "vim"

यदि आप जानना चाहते हैं कि आप क्या कर रहे हैं। से man git-commit:

पर्यावरण और कॉन्फ़िगरेशन वैरिबल्स

प्रतिबद्ध लॉग संदेश को संपादित करने के लिए उपयोग किया गया संपादक चुना जाएगा GIT_EDITOR पर्यावरण परिवर्तनीय, core.editor विन्यास चर, VISUAL पर्यावरण परिवर्तनीय, या EDITOR पर्यावरण चर (उस क्रम में)।


461
2018-04-08 00:31



बीटीडब्ल्यू, उपरोक्त सीवीएस और एसवीएन के लिए सच है, और मुझे लगता है कि अन्य संस्करण नियंत्रण। - armandino
@armandino: हाँ, दूसरों का उपयोग कर सकते हैं VISUAL या EDITOR, लेकिन वे निश्चित रूप से उपयोग नहीं करते हैं GIT_EDITOR या core.editor। - Mark Rushakoff
हां - svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.2 तो सिद्धांत रूप में, यदि मैं दोनों svn और git का उपयोग कर रहा हूं, तो $ VISUAL या $ EDITOR सेट करना डिफ़ॉल्ट रूप से दोनों को कवर करने का सबसे अच्छा समाधान होगा! - brasskazoo
पूर्णता के लिए, core.editor का अर्थ है [कोर] संपादक = ... फ़ाइल में - JRG
सवाल का जवाब नहीं दिया "मैं गिट कैसे कॉन्फ़िगर कर सकता हूं ..." - Ant6n


उबंटू और डेबियन (धन्यवाद @ मिचिलबी) पर डिफ़ॉल्ट संपादक को बदलना भी संभव है:

sudo update-alternatives --config editor

जो निम्नलिखित को संकेत देगा:

There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                Priority   Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number: 

144
2017-10-27 15:35



डेबियन पर यह भी काम करता है, धन्यवाद! यह पिको - argh के लिए डिफ़ॉल्ट है। - MichielB
आर्क पर नहीं? [ - dylnmc
बेशक यह डेबियन पर काम करता है; यह एक डेबियन सुविधा है, जो ज्यादातर चीजों की तरह है (ओह, विवादास्पद!), उबंटू केवल विरासत में मिलता है। डेबियन के alternatives सिस्टम समर्थित प्रोग्राम प्रकारों के लिए डिफ़ॉल्ट प्रबंधित करने का एक आसान तरीका है। सन्दर्भ के लिए: debian-administration.org/article/91/... - underscore_d
यह काम करता है, जबकि GIT_EDITOR तथा EDITOR काम नहीं --ubuntu - Ninja
Emacs के लिए कोई विकल्प नहीं है? यदि सच है, क्या शर्म की बात है! - haziz


विंडोज़ 7 में, "सब्लिमे" संपादक जोड़ने के दौरान यह अभी भी मुझे एक त्रुटि दे रहा था:

खाली प्रतिबद्ध संदेश के कारण प्रतिबद्धता को छोड़ना।

सब्लिम फोकस रखने में सक्षम नहीं था।

इसे ठीक करने के लिए मैंने c: / users / username / फ़ोल्डर में .gitconfig फ़ाइल खोली और डबल कोट्स के बाहर --wait विकल्प के साथ निम्न पंक्ति को जोड़ा।

[core]
      editor = 'F:/Program Files/Sublime Text 2/sublime_text.exe' --wait

उम्मीद है कि किसी को सुब्लीम के साथ इसी तरह के मुद्दे का सामना करना पड़ेगा।


53
2018-02-21 17:15



अच्छा! धन्यवाद Anmol, मुझे वह मुद्दा था जहां यह एक खाली संदेश पर काम कर रहा था। - sircapsalot
आप गिट काम के लिए उत्कृष्ट क्यों उपयोग करना चाहते हैं? - Adam F
गिट प्रतिबद्ध के लिए कोई भी संपादक अधिकतर टिप्पणियों की एक पंक्ति जोड़ने के लिए उपयोग किया जाएगा और सब्लिम कई डेवलपर्स के लिए विभिन्न कारणों के लिए एक प्रोग्रामर विकल्प है। आम तौर पर लोगों को उनके अधिकांश कोडिंग और अन्य कार्यों के लिए एक संपादक का उपयोग करने की प्रवृत्ति होती है। सब्लिम सिर्फ एक व्यक्तिगत पसंद है, यह कोई संपादक हो सकता है। - Anmol Saraf
बस पता चला कि सिंगल कोट्स की आवश्यकता है। यह डबल कोट्स के साथ काम नहीं करता है "। - dotnetCarpenter
Gitconfig मैन्युअल रूप से संपादित करने के बजाय आप इस कमांड का उपयोग कर सकते हैं git config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait" - KayakinKoder


विंडोज 7 में, नोटपैड ++ में संपादक सेट करना

  • कोई भी टेक्स्ट एडिटर खोलें।
  • इस फ़ाइल को खोलें: C:\Users\YOUR_USERNAME\.gitconfig
  • इस खंड को नीचे जोड़ें:

[core]
    editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' 
  • फ़ाइल को सहेजें और बंद करें।
  • जब आप गिट के साथ काम कर रहे हों, तो बस लिखें git commit और दबाएं Enter। यह नोटपैड ++ खुला होगा।
  • फ़ाइल के शीर्ष पर अपना प्रतिबद्ध संदेश लिखें, और फ़ाइल को सहेजें और बंद करें। किया हुआ!

47
2018-03-07 00:08



आखिरकार कोई जो जानता है कि इसे सरल कैसे लिखना है! धन्यवाद। लेकिन आपको उल्लेख करना चाहिए कि नोटपैड के रास्ते में '/' या डबल बैकस्लैश '\\' का उपयोग किया जाना चाहिए, अन्यथा गिट शिकायत करेगा ... - icl7126
आपको कम से कम जोड़ने की आवश्यकता हो सकती है -multiInst नोटपैड ++ और संभवतः पैरामीटर के रूप में -notabbar। ऐसा करें अगर गिट को यह नहीं पता कि आपने फ़ाइल को संपादित करना कब समाप्त कर लिया है और या तो हमेशा के लिए इंतजार कर रहा है या नहीं। - ErikE
बस मैं क्या चाहता था। \ और / के उपयोग की तुलना करें - Henry
कमांडलाइन पर कॉन्फ़िगरेशन सेट करने के लिए, मुझे सिंगल कोट्स जैसे डबल कोट्स की आवश्यकता है >git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"' - Josef
नोटपैड ++ पैराम जोड़ने के लिए, मुझे यह करना था: editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar - वह है, सीमित एकल उद्धरण के बाहर पैरा - cropredy


और यदि आप कमांड लाइन का उपयोग कर डिजाइनरों के साथ काम कर रहे हैं तो पिको, और कम कटौती नहीं जानते;)

git config --global core.editor "pico"

या

export VISUAL=pico
export EDITOR=pico

21
2018-06-27 13:56





मैक ओएसएक्स 10 में गिट प्रतिबद्ध संपादक के रूप में सब्लिमे टेक्स्ट 2 सेट करना

इस आदेश को चलाएं:

$ git config --global core.editor "/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl"

या केवल:

$ git config --global core.editor "subl -w"

15
2018-03-01 01:19



मुझे पूरा यकीन है कि उत्कृष्टता के पास टेक्स्टमेट की तरह निष्पादन योग्य है mate.. - code ninja
किसी भी तरह से यह पाठ को गिट करने के लिए नहीं दे रहा है। मुझे 'खाली प्रतिबद्ध संदेश के कारण प्रतिबद्धता मिल रही है।' त्रुटि। - mahe madhi
मैंने SL सेट करने के लिए पहले कमांड का उपयोग किया है। cmd + S फिर cmd + W संपादक को बंद करने के लिए - mahe madhi
विजुअल स्टूडियो कोड भी समर्थन करता है -w पैरामीटर। उदाहरण के लिए। $ git config --global core.editor "code -w"। स्वच्छ सामान - Automatico
वैकल्पिक जवाब यहां: stackoverflow.com/a/48212377/4561887, लिनक्स उदाहरण के साथ। - Gabriel Staples


विजुअल स्टूडियो कोड (बनामोड) को अपने डिफ़ॉल्ट गिट संपादक बनाने के लिए

git config --global core.editor "code --wait"

15
2018-06-28 20:42





आपके गिट संपादक के रूप में एटम

git config --global core.editor "atom --wait"

उपरोक्त काम करने के लिए कमांड लाइन से चलाने के लिए एटम को कॉन्फ़िगर करने की आवश्यकता है:

ओएस एक्स: एटम से मेनू कमांड स्थापित करें: मेनू बार> Atom>   शेल कमांड स्थापित करें

विंडोज: कोई कार्रवाई आवश्यक नहीं है - परमाणु को डिफ़ॉल्ट रूप से कमांड लाइन से चलाने के लिए कॉन्फ़िगर किया गया है


13
2017-07-13 17:43





Emacs उपयोगकर्ताओं के लिए

.emacs:

(server-start)

shellrc:

export EDITOR=emacsclient

9
2018-04-08 00:42



यहां आने पर टर्मिनल मोड में emacs को सेट करने का तरीका बताया गया है git config --global core.editor "emacs -nw" - kukinsula
चेक आउट MAGIT प्रथम। - boris


विंडोज़: डिफ़ॉल्ट प्रतिबद्ध संदेश संपादक के रूप में नोटपैड सेट करना

git config --global core.editor notepad.exe

मारो Ctrl+एस अपने प्रतिबद्ध संदेश को बचाने के लिए। त्यागने के लिए, बिना सहेजे बिना नोटपैड विंडो बंद करें।

यदि आप सहेजने के लिए शॉर्टकट दबाते हैं, तो निरस्त करने का निर्णय लें, फ़ाइल-> के रूप में सहेजें, और खुलने वाले संवाद में, "सभी प्रकार के रूप में सहेजें" को बदलें "सभी फ़ाइलें (*। *)"। आपको "COMMIT_EDITMSG" नाम की एक फ़ाइल दिखाई देगी। इसे हटाएं, और नोटपैड विंडो बंद करें।

संपादित करें: वैकल्पिक रूप से, और अधिक आसानी से, खुली नोटपैड विंडो से सभी सामग्री हटाएं और सहेजें दबाएं। (धन्यवाद mwfearnley टिप्पणी के लिए!)

मुझे लगता है कि छोटे लिखने के लिए जैसे संदेश संदेश नोटपैड सर्वश्रेष्ठ सेवा करता है, क्योंकि यह आसान है, खिड़कियों के साथ, कोई समय में खुलता है। यहां तक ​​कि जब आपके पास प्लगइन और सामान का भार होता है तो भी आपके शानदार होने पर एक या दो सेकंड लग सकते हैं।


9
2018-04-13 03:14



फ़ाइल-> के रूप में सहेजें के बजाय, आप फ़ाइल को खाली कर सकते हैं (या किसी भी गैर-रिक्त रेखाओं को टिप्पणी कर सकते हैं), और फिर एक खाली प्रतिबद्ध संदेश के कारण गिट निरस्त हो जाएगा। - mwfearnley
नोटपैड के साथ नई लाइनें गायब हैं ... - Stepan Yakovenko
@Stepan क्या आप प्रतिबद्ध संशोधन कर रहे हैं? यदि ऐसा है, तो मुझे लगता है कि इसे करना है \r\n (विंडोज़ में नई लाइन) और \n (लिनक्स में नई लाइन, गिट के लिए भी डिफ़ॉल्ट)। - Sнаđошƒаӽ
बेहतर आप इस तरह की लाइन जोड़ते हैं core.editor = 'notepad' .git/COMMIT_EDITMSG --wait इसलिए यह डिफ़ॉल्ट संपादन संदेश खुलता है और बचाता है और आपको "के रूप में सहेजें" की आवश्यकता नहीं है - Radon8472