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


2547

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

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


201
"कैसे जाने के लिए टिप्पणी करने के लिए जाने के लिए git पाने के लिए git जाओ?"
माइकल बूर

जवाबों:


3484

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

  • core.editorअपने गिट विन्यास में सेट करें :git config --global core.editor "vim"
  • GIT_EDITORपर्यावरण चर सेट करें :export GIT_EDITOR=vim

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

export VISUAL=vim
export EDITOR="$VISUAL"

* दोनों को सेट करना आवश्यक नहीं है, लेकिन कुछ प्रोग्राम अधिक-सही का उपयोग नहीं कर सकते हैं VISUALVISUALबनामEDITOR देखें ।


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

[core]
    editor = 'subl' --wait

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


96
EDITOR पर्यावरण चर का यह लाभ है कि कई अन्य कार्यक्रम भी इसका सम्मान करेंगे।
Boojum

16
ध्यान दें कि git config --globalआपकी व्यक्तिगत (प्रति-उपयोगकर्ता) गिट कॉन्फ़िगरेशन फ़ाइल में लिखी जाएगी। यूनिन्स पर यह है ~/.gitconfig। तो यह आपके सभी रिपॉजिटरी के लिए इसे कॉन्फ़िगर करेगा।
१२:१२ पर जकूब नारबस्की

42
आप अंतिम प्रतिबद्ध संदेश में संशोधन करने की कोशिश करके इसे सफलतापूर्वक बदल सकते हैं। git commit --amend
मार्को एम।

11
यदि आप विंडोज में # 1 विकल्प कर रहे हैं और संपादक के लिए पथ में रिक्त स्थान हैं (कहते हैं, यदि यह प्रोग्राम फ़ाइलों के तहत है) तो अपने दोहरे-उद्धरणों के अंदर एकल-उद्धरण को अजीब करें। जैसे "" C: / Program Files (x86) /Whatever/App.exe '' - कुछ के लिए स्पष्ट है, लेकिन यह मेरे लिए नहीं था!
पल्बिसिमो

5
@ अब्रमोदज -wआवश्यक नहीं है; -w {scriptout}बाद में फिर से खेलना करने के लिए संपादन करते समय आपके द्वारा लिखे गए सभी वर्ण सहेजता है। शायद उसे अपने साथ भ्रमित कर रहे हैं -f, जो है आवश्यक जब विम के जीयूआई संस्करण करार दिया। यही है, यदि आप उपयोग करते हैं mvim, तो आपके द्वारा निर्दिष्ट संपादक mvim -fइसके बजाय होना चाहिए mvim
रोरी ओ'केन

617

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

git config --global core.editor "vim"

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

पर्यावरण और संरक्षण संस्करण

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


4
Btw, उपरोक्त सीवीएस और एसवीएन के लिए सच है, और मुझे लगता है कि अन्य संस्करण नियंत्रण हैं।
आर्मंडिनो

6
@armandino: हाँ, दूसरों का उपयोग VISUALकर सकते हैं या EDITOR, लेकिन वे निश्चित रूप से उपयोग नहीं करते हैं GIT_EDITORया core.editor
मार्क रुशखॉफ

8
हां - svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.2 इसलिए सिद्धांत रूप में, अगर मैं svn और git दोनों का उपयोग कर रहा हूं, तो $ VISUAL या $ EDITOR की स्थापना करूंगा डिफ़ॉल्ट रूप से दोनों को कवर करने के लिए सबसे अच्छा समाधान हो!
पीतलकाज़ू

12
संपूर्णता की खातिर, core.editor का अर्थ है [core] संपादक = ... फ़ाइल में
JRG

2
इस सवाल का जवाब नहीं दिया "मैं कैसे कॉन्फ़िगर करूं ..."
Ant6n

192

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

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: 

8
डेबियन पर यह भी काम करता है, धन्यवाद! यह पिको - अर्घ के लिए डिफॉल्ट करता है।
मिकिबेल

2
बेशक यह डेबियन पर काम करता है; यह एक डेबियन सुविधा है, जो अधिकांश चीजों (ऊह, विवादास्पद!) की तरह है, उबंटू केवल विरासत में मिला है। डेबियन की alternativesप्रणाली समर्थित प्रोग्राम प्रकारों के लिए चूक को प्रबंधित करने का एक बहुत आसान तरीका है। संदर्भ के लिए: debian-administration.org/article/91/…
underscore_d

यह काम करता है, जबकि GIT_EDITORऔर EDITOR नहीं --ubuntu काम
निंजा

Emacs के लिए कोई विकल्प नहीं है? अगर सच है, तो क्या शर्म की बात है!
खतरनाक

2
@ हाज़िज़ update-alternativesकिसी भी संपादकों को दिखाएगा जो स्थापित किए गए हैं। Koen सिर्फ Emacs स्थापित नहीं है।
मेजर

59

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

खाली प्रतिबद्ध संदेश के कारण दुर्व्यवहार करना।

उदात्तता ध्यान केंद्रित करने में सक्षम नहीं थी।

इसे ठीक करने के लिए मैंने .itconfig फ़ाइल को c: / उपयोगकर्ताओं / उपयोगकर्ता नाम / फ़ोल्डर में खोला और निम्नलिखित पंक्तियों को दोहरे उद्धरण के बाहर --wait विकल्प के साथ जोड़ा।

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

आशा है कि उदात्त के साथ इसी तरह के मुद्दे का सामना कर रहे किसी के लिए इसके सहायक।


अच्छा! धन्यवाद अनमोल, मैं उस मुद्दे को ले रहा था जहां यह एक खाली संदेश पर प्रतिबद्ध था।
ddavison

आप गिट कमिट के लिए उदात्त का उपयोग क्यों करना चाहेंगे?
एडम एफ

13
गिट कमिट के लिए कोई भी संपादक ज्यादातर टिप्पणियों की कई पंक्तियों को जोड़ने के लिए उपयोग किया जाएगा और उदात्त कई डेवलपर्स के लिए विभिन्न कारणों के लिए एक प्रोग्रामर पसंद है। लोगों में आमतौर पर अपने अधिकांश कोडिंग और अन्य कार्यों के लिए एक संपादक का उपयोग करने की प्रवृत्ति होती है। उदात्तता सिर्फ एक व्यक्तिगत पसंद है, यह कोई भी संपादक हो सकता है।
अनमोल सराफ

4
बस पता चला कि सिंगल कोट्स की आवश्यकता है। यह दोहरे उद्धरण चिह्नों के साथ काम नहीं करता है। "
डॉटनेटकारपेंटर

1
मैन्युअल रूप से gitconfig को संपादित करने के बजाय आप इस कमांडgit config --global core.editor "'C:/Program Files/Sublime Text 3/subl.exe' --wait"
KayakinKoder

53

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

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

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

अंत में कोई है जो इसे सरल लिखना जानता है! धन्यवाद। लेकिन आपको उल्लेख करना चाहिए, कि नोटपैड के पथ में '/' या डबल बैकस्लैश '\\' का उपयोग करना होगा, अन्यथा गिट शिकायत करेंगे ...
icl7126

10
आपको -multiInstनोटपैड ++ और संभवतः के लिए कम से कम एक पैरामीटर के रूप में जोड़ना पड़ सकता है -notabbar। ऐसा करें यदि git को यह पता नहीं लगता है कि आपने फ़ाइल का संपादन कब पूरा किया है और या तो हमेशा के लिए इंतजार कर रहा है या बिल्कुल नहीं।
एरिक

1
बस मुझे जो चाहिए था।
हेनरी

4
कमांडलाइन पर कॉन्फ़िगरेशन सेट करने के लिए, मुझे सिंगल कोट्स के अंदर डबल कोट्स की आवश्यकता है जैसे>git config --global core.editor '"C:/Program Files (x86)/Notepad++/notepad++.exe"'
जोसेफ

2
Notepadd ++ params जोड़ने के लिए, मुझे यह करना था: editor = 'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar- अर्थात,
परिमार्जन

30

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

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

24

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

git config --global core.editor "pico"

या

export VISUAL=pico
export EDITOR=pico

18

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

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

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

OS X : एटम से शेल कमांड इंस्टॉल करें: मेनू बार> एटम> शेल कमांड इंस्टॉल करें

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


17

मैक OSX 10 में Git प्रतिबद्ध संपादक के रूप में उदात्त पाठ 2 की स्थापना

यह आदेश चलाएँ:

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

या केवल:

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

किसी भी तरह यह पाठ को वितरित करने के लिए नहीं है। मुझे 'कमिटेड मैसेज की वजह से गर्भपात करना पड़ा।' त्रुटि।
महेंद्रन

मैंने SL को सेटअप करने के लिए पहली कमांड का उपयोग किया है। cmd + S तब cmd + W को बंद करने के लिए संपादक
Mahendran

2
विजुअल स्टूडियो कोड भी -wपैरामीटर का समर्थन करता है। उदाहरण के लिए। $ git config --global core.editor "code -w"। नीट सामान
ऑटोमैटिक

यहां वैकल्पिक जवाब: stackoverflow.com/a/48212377/4561887 , लिनक्स उदाहरण के साथ।
गेब्रियल स्टेपल्स

13

विंडोज: नोटपैड को डिफ़ॉल्ट कमिट मैसेज एडिटर के रूप में सेट करना

git config --global core.editor notepad.exe

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

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

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

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


2
फ़ाइल-> के रूप में सहेजें के बजाय, आप फ़ाइल को खाली कर सकते हैं (या किसी भी गैर-रिक्त लाइनों को टिप्पणी कर सकते हैं), और फिर एक खाली प्रतिबद्ध संदेश के कारण Git गर्भपात करेगा।
mwfearnley

@Stepan क्या आप प्रतिबद्ध हैं? यदि ऐसा है, तो मैं अनुमान लगा रहा हूं कि इसे \r\nविंडोज में (नई लाइन में) और \n(लिनक्स में न्यूलाइन, बिट के लिए भी डिफॉल्ट) करना है।
Sain17ошƒаӽ

बेहतर है कि आप इस तरह से लाइन जोड़ते हैं core.editor = 'notepad' .git/COMMIT_EDITMSG --waitजिससे यह खुलता है और डिफ़ॉल्ट संपादित संदेश को बचाता है और आपको "save as" की आवश्यकता नहीं है
Radon8472

12

यह उन लोगों के लिए एक उत्तर प्रदान करता है जो इस प्रश्न पर आते हैं जो विम के अलावा किसी अन्य संपादक को जोड़ना चाह सकते हैं।

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

पाठ संपादकों को गिट के साथ जोड़ना

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

Notepad ++:
git config --global core.editor "'C:/Program Files (x86)/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"

उदात्त पाठ:
git config --global core.editor "'c:/Program Files/sublime text 3/subl.exe' -w"

एटम:
git config --global core.editor "atom --wait"

ऊपर दिए गए आदेश मानते हैं कि आपके संपादक को विंडोज़ मशीन के लिए डिफ़ॉल्ट निर्देशिका में स्थापित किया गया है।

कमांड मूल रूप .gitconfigसे आपके होम डायरेक्टरी में डबल-कोट्स के बीच टेक्स्ट को जोड़ते हैं ।
विंडोज़ मशीन पर घर होने की संभावना है C:\Users\your-user-name, जहां आपका उपयोगकर्ता-नाम आपका लॉगिन नाम है।
कमांड लाइन से, आप टाइप करके इस डायरेक्टरी तक पहुँच सकते हैं cd ~

उदाहरण के लिए, ऊपर दिया गया एक कमांड इस [core]तरह से अनुभाग के तहत निम्नलिखित पंक्ति जोड़ देगा :
[core] editor = 'C:/Program Files/sublime text 3/subl.exe' -w

यदि आपके पास एक अलग संपादक है, तो बस ऊपर दिए गए तरीके का उपयोग करके, अपने संपादक के लिए पथ के साथ बदलें। (और आशा है कि इष्टतम उपयोग के लिए किसी झंडे की आवश्यकता नहीं है।)


धन्यवाद, मैं इस तथ्य से जूझ रहा था कि सिर्फ "विम" ने जीआईटी (मेरी प्राथमिकताओं के बिना, आदि) के लिए "आंतरिक" विम उदाहरण लॉन्च किया। मेरे उदाहरण के लिए पूरा रास्ता प्रदान करने से समस्या हल हो गई!
बेनिक्का

10

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

.emacs:

(server-start)

shellrc:

export EDITOR=emacsclient

6
यहाँ जब कॉमिंग में टर्मिनल मोड में emacs सेट करना हैgit config --global core.editor "emacs -nw"
kukinsula

मैं उपयोग करता हूं git config --global core.editor "emacs -nw -q", जहां -qस्काइल्स इनिशियलाइज़ेशन फ़ाइलें।
मिगुएलमोरिन

8

आपके गिट संपादक (विंडोज और लिनक्स निर्देश) के रूप में उदात्त पाठ 3 के लिए सर्वश्रेष्ठ सेटिंग्स:

Windows में इन निर्देशों का पालन करने के लिए सुनिश्चित करें कि आपने Windows के लिए Git स्थापित किया है । विंडोज में, मैं गिट बैश का उपयोग करना पसंद करता हूं ताकि यह लिनक्स की तरह अधिक महसूस हो।

सबसे पहले, हम एक विशेष उदात्त पाठ परियोजना बनाना चाहते हैं ताकि हम विशेष परियोजना सेटिंग्स निर्दिष्ट कर सकें जो हम चाहते हैं कि जब भी Git संपादक को कॉल करे, तो Git में संपादन करते समय चीजों को आसान बनाया जा सके। उदाहरण के लिए, मैं आमतौर पर अपने शासक को अधिकांश परियोजनाओं में 120 वर्णों के लिए सेट करता हूं, लेकिन Git प्रतिबद्ध संदेशों के लिए मैं चाहता हूं कि यह 72 वर्ण का हो, ताकि जब आप कॉल करें git logया तो यह टर्मिनल में अच्छी तरह से फिट हो git lg


1. सेटिंग्स के साथ एक उदात्त पाठ परियोजना बनाएं जो हम Git प्रतिबद्ध संदेशों को संपादित करने के लिए उपयोग करना चाहते हैं

उदात्त पाठ खोलें और एक नया अनाम प्रोजेक्ट बनाने के लिए मेनू "फ़ाइल""नई विंडो" पर जाएं। मेनू "प्रोजेक्ट""प्रोजेक्ट इस रूप में सहेजें ..." पर जाएं और इसे सहेजने के लिए एक स्थान चुनें। लिनक्स में मैंने इसे फ़ाइल नाम के साथ अपने लिनक्स होम डायरेक्टरी में सेव किया .gitconfig.sublime-project। अपने रास्ते इसलिए है: ~/.gitconfig.sublime-projectविंडोज में इसे अपने घर निर्देशिका में भी सहेजें, उदाहरण के लिए: C:\Users\MY_USER_NAME\.gitconfig.sublime-project अब प्रोजेक्ट सेटिंग्स को संपादित करने के लिए मेनू "प्रोजेक्ट""प्रोजेक्ट संपादित करें" पर जाएं। निम्नलिखित पेस्ट करें और सेटिंग्स को सहेजें। यदि वांछित हो तो अपनी परियोजना सेटिंग्स के लिए कोई और संपादन करें।

{
    // For folder settings help see here: https://www.sublimetext.com/docs/3/projects.html

    "folders":
    [

    ],

    "settings":
    {

        // Disables horizontal scrolling if enabled.
        // May be set to true, false, or "auto", where it will be disabled for
        // source code, and otherwise enabled.
        "word_wrap": false,

        // Set to a value other than 0 to force wrapping at that column rather than the
        // window width
        "wrap_width": 0,

        // Columns in which to display vertical rulers
        "rulers": [72, 50], //72 is recommended by git for commit message content, and 50 for commit titles

        // The number of spaces a tab is considered equal to
        "tab_size": 4,

        // Set to true to insert spaces when tab is pressed
        "translate_tabs_to_spaces": true,
    },

    "build_systems":
    [

    ]

}

2. संपादक को गिट द्वारा उपयोग किए जाने के लिए सेट करें

अब हमें .gitconfigफ़ाइल को संपादित करके Git द्वारा उपयोग किए जाने वाले संपादक को सेट करने की आवश्यकता है ।

लिनक्स के लिए:

आपकी उपयोगकर्ता प्रति इसमें स्थित होगी ~/.gitconfig। इस फ़ाइल को खोलें और निम्न पंक्तियाँ जोड़ें। आपके द्वारा ऊपर बनाए गए Git प्रोजेक्ट के लिए उचित पथ नाम का उपयोग करना सुनिश्चित करें! मैं उपयोग कर रहा हूं ~/.gitconfig.sublime-project

[core]
    editor = subl --project ~/.gitconfig.sublime-project --wait

--waitमहत्वपूर्ण है, के रूप में यह प्रतीक्षा करने के लिए जब तक आप फ़ाइल को बंद करने से पहले इसे पर जारी Git बाध्य करती है। --projectSublime Text को बताने के लिए यह लाइन महत्वपूर्ण है कि जब भी Git Sublime Text को खोलेगा तो आप कौन सा प्रोजेक्ट खोलना चाहते हैं।

प्रति @ digitaldreamer के उत्तर के ऊपर ( https://stackoverflow.com/a/2596835/4561887 ), " sublनिष्पादन योग्य के पूर्ण पथ द्वारा प्रतिस्थापित किया जा सकता है लेकिन [उपनाम subl] आमतौर पर तब उपलब्ध होता है जब [उदात्त] सही ढंग से स्थापित हो।"

विंडोज के लिए:

विंडोज के लिए, पहले पृष्ठभूमि जानकारी के लिए लिनक्स निर्देश पढ़ें। अब हम कुछ ऐसा ही करेंगे।

(वैकल्पिक: sublगिट बैश में उपयोग के लिए एक उपनाम बनाएं ):

एक टेक्स्ट एडिटर खोलें (उदाहरण के लिए, नोटपैड, नोटपैड ++, उदात्त पाठ, गनी , आदि), और अपने होम डायरेक्टरी में ".bash_profile" नामक फ़ाइल बनाएं। अपने रास्ते इसलिए हो जाएगा: C:\Users\MY_USER_NAME\.bash_profile। निम्नलिखित को इसमें सहेजें:

alias subl="/c/Program\ Files/Sublime\ Text\ 3/subl.exe"

यह एक Git Bash उपनाम बनाता है जिसे sublहम Windows के लिए Git Bash में उपयोग कर सकते हैं, आसानी से Sublime Text खोलने के लिए। इस चरण की आवश्यकता नहीं है, लेकिन यह सामान्य गिट बैश उपयोग के लिए उपयोगी है। subl .उदाहरण के लिए, Git Bash में अपनी वर्तमान निर्देशिका में एक नया उदात्त पाठ परियोजना खोलने के लिए आप कॉल कर सकते हैं ।

(अनिवार्य):

.gitconfigअपनी होम डाइरेक्टरी में मिली फाइल को एडिट करें : C:\Users\MY_USER_NAME\.gitconfigइसमें निम्न जोड़कर। ऊपर दिए गए लिनक्स निर्देशों से सूक्ष्म बदलाव देखें:

[core]
  editor = 'C:/Program Files/Sublime Text 3/subl.exe' --project ~/.gitconfig.sublime-project --wait
  • ध्यान दें कि आपको उदात्त पाठ निष्पादन योग्य के लिए पूर्ण पथ निर्दिष्ट करना होगा। नोट स्लैश की दिशा! पथ नाम में फ़ोल्डरों को अलग करने के लिए उपयोग /न करें \! ( मुझे यह देखने में मदद करने के लिए धन्यवाद VonC )।
  • sublऊपर दिए गए Git Bash के लिए हमारे द्वारा बनाया गया हमारा उपनाम यहां काम नहीं करता है, इसलिए आप इसका उपयोग नहीं कर सकते हैं जैसे हमने लिनक्स उदाहरण में किया था, इसके बजाय आपको ऊपर दिखाए गए अनुसार पूरे रास्ते को निर्दिष्ट करना होगा।
  • ~प्रतीक, हालांकि, अभी भी यहाँ अपने Windows होम निर्देशिका को पाने के लिए काम करता है।

2.5। (वैकल्पिक) "गिट" पैकेज को उदात्त पाठ 3 में स्थापित करें।

यह आपको git commitसंदेशों के लिए सिंटैक्स हाइलाइटिंग , साथ ही अन्य Git कमांड्स तक पहुंच प्रदान करता है जैसे कि git blame(जो कि मैं अक्सर सब्मिट टेक्स्ट में उपयोग करता हूं) या git commit(जो मैं सब्मिट टेक्स्ट में उपयोग नहीं करता हूं क्योंकि मैं सामान्य Git के लिए कमांड-लाइन पसंद करूंगा। प्रवाह, जैसा कि मैंने इस उत्तर के नीचे अपनी टिप्पणियों में उल्लेख किया है)।

पैकेज स्थापित करने के लिए: सबसे पहले, सुनिश्चित करें कि "पैकेज नियंत्रण" स्थापित है। इसके बाद, Ctrl+ Shift+ P(टूल → कमांड पैलेट के समान) दबाएं और "पैकेज कंट्रोल: इंस्टॉल पैकेज" के सभी या कुछ भाग को टाइप करें, फिर दबाएँ Enter। जो खोज बॉक्स आता है, पैकेज "गिट" की खोज करें और Enterउस पर हिट करें, या उस पर क्लिक करें, स्वचालित रूप से इसे स्थापित करने के लिए।

एक बार स्थापित होने के बाद, Ctrl+ Shift+ Pफिर "git" की खोज करने से Git कमांड आएगी, जिसे आप आंतरिक रूप से Sublime Text के अंदर उपयोग कर सकते हैं, जैसे कि git blame


3. इसका उपयोग करें

अब जब आप कॉल करते हैं git commit, उदाहरण के लिए, कमांड-लाइन से सामान्य के रूप में, उदात्त पाठ .gitconfig.sublime-projectउस परियोजना की सेटिंग के साथ ऊपर बनाए गए में खुल जाएगा ! जैसा कि आप एक पैराग्राफ टाइप करते हैं, आप देखेंगे कि यह उस शासक के अतीत का विस्तार करता है, जो सॉफ्ट वर्ड-रैप बंद है। प्रत्येक पंक्ति के अंत में ऑटो-सम्मिलित हार्ड-रिटर्न के माध्यम से हार्ड रैप को बाध्य करने के लिए, अपने कर्सर को ऑटो-रैप और प्रेस Alt+ की लंबी लाइन पर रखें Qअब यह 72 अक्षरों में हार्ड-रैप / हार्ड-फोल्ड होगा, जिसे हमने प्रोजेक्ट सेटिंग्स '' शासकों '' पैरामीटर से ऊपर सेट किया है।

अब, बचाने के साथ अपने प्रतिबद्ध संदेश Ctrl+ S, और बाहर निकलने (अपने को पूरा करने के git commitसाथ) Ctrl+ Shift+ W

किया हुआ!

सम्बंधित:

  1. विंडोज पर Meld के साथ Git mergetool
  2. https://github.com/ElectricRCAircraftGuy/eRCaGuy_dotfiles

1
यह काफी विस्तृत लग रहा है। +1
VONC

उदात्त पाठ 3 में, अब एक Git Commitवाक्यविन्यास प्रकार है। अब आप कस्टम "उदात्त-पाठ प्रोजेक्ट" चरण को छोड़ सकते हैं।
यंगिनि

मैं असहमत हूं: जो केवल वाक्य रचना हाइलाइटिंग करता है। मेरा कस्टम प्रोजेक्ट सिंटैक्स higlighting को नहीं छूता है: यह शासकों को सेट करता है और आपके गिट के लिए एक संदर्भ देता है, ताकि वे उस परियोजना को खोलें जो आपके पास उस परियोजना में नहीं खुलती है जो आपके पास थी या आखिरी में खुली थी। दोनों असंबंधित हैं; उन दोनों को करो।
गेब्रियल स्टेपल्स

मैंने अभी चरण 2.5, BUT (बिट "लेकिन" यहां) जोड़ा है: मैं हमेशा अपने संपादक के रूप में Sublime पाठ 3 का उपयोग नहीं करता हूं (कभी-कभी मैं ग्रहण का उपयोग करता हूं क्योंकि इसमें सुपीरियर की तुलना में बहुत बेहतर प्रतीक ट्रैकिंग और अनुक्रमण है, हालांकि यह अन्यथा एक भद्दा संपादक है Sublime की तुलना में), और मैं वास्तव में कमांड-लाइन से Git का उपयोग करना पसंद करता हूं, इसलिए मैं निश्चित रूप से चरण 1 को छोड़ने की अनुशंसा नहीं करता हूं, भले ही आप "Git" पैकेज को Sublime में स्थापित करें क्योंकि मैंने अभी चरण 2.5 में वर्णित किया है। हां, आप Git Commits को सीधे Sublime से कर सकते हैं, लेकिन मैं कमांड लाइन पसंद करूंगा।
गेब्रियल स्टेपल्स

सुझाव: यदि आप के sublimeसाथ प्रयोग करते हैं gitऔर trim_trailing_white_space_on_saveआप पैच जोड़ने के लिए एक उपनाम जोड़ना चाहते हैं क्योंकि सफेद जगह को हटाने से पैच संपादन टूट जाता है जहां यह बहुत सार्थक है। इसे कुछ इस तरह से हासिल किया जा सकता है:git config --global alias.patch "-c core.editor=vim add --patch"
तिमो

3

अपने git संपादक के रूप में Mvim

अन्य सभी जीयूआई अनुप्रयोगों की तरह, आपको प्रतीक्षा ध्वज के साथ एमवीएम लॉन्च करना होगा।

git config --global core.editor "mvim --remote-wait"

--remote-wait-silentबदसूरत त्रुटि संदेश से बचने के लिए :)
शिनिगामी

2

विंडोज उपयोगकर्ताओं के लिए जो लिनक्स के लिए विंडोज सबसिस्टम के साथ नव- उपयोग करना चाहते हैं :

git config core.editor "C:/Windows/system32/bash.exe --login -c 'nvim .git/COMMIT_EDITMSG'"

यह वह जगह है नहीं एक पक्का समाधान यह इंटरैक्टिव रिबेसिंग (उदाहरण के लिए) को संभाल नहीं करता है। सुधार बहुत स्वागत है!


1

बस प्रयास करें EDITOR=vim git commit

या आप अपने EDITOR को export EDITOR=vimअपने bashrc में देख सकते हैं।


1

Mac ऐप स्टोर से TextWrangler के उपयोगकर्ताओं के लिए:

git config --global core.editor "open -n -W -a TextWrangler"

यह भी सुनिश्चित करें कि आपका "TextWrangler> प्राथमिकताएँ> अनुप्रयोग> जब TextWrangler सक्रिय हो जाए:" सेटिंग "कुछ भी नहीं" के लिए सेट है

यह मैक ऐप स्टोर से TextWrangler 5.0.2 के साथ OS X 10.11.4 पर मेरे लिए काम करता है।

स्पष्टीकरण:

-N साधन एक नया उदाहरण में खोलें।

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

The -a TextWrangler का अर्थ है कि फ़ाइल खोलने के लिए TextWrangler एप्लिकेशन का उपयोग करें।

देखें man openअधिक जानकारी के लिए अपने मैक टर्मिनल अनुप्रयोग में।


यदि TextWrangler पहले से खुला है तो आपका समाधान पहले वाले फ़ाइल सेट के साथ एक और उदाहरण खोलेगा। यह खतरनाक लगता है।
कालस

मैंने TextWrangler कमांड लाइन टूल्स ( barebones.com/support/textwrangler/cmd-line-tools.html ) इंस्टॉल किया और फिर इस्तेमाल किया git config --global core.editor "edit -w"। यह वर्तमान उदाहरण में प्रतिबद्ध संदेश को खोल देगा और जैसे ही आप केवल इस प्रतिबद्ध संदेश दस्तावेज़ को बंद करते हैं, यह प्रतिबद्ध जारी रहेगा।
कालस

1

उपयोग करते समय git-reviewमुझे sequence.editorइंटरेक्टिव रीबेस ( git rebase -i -p) करने में सक्षम होने के लिए मूल्य को संशोधित करना था :

git config --global sequence.editor "gvim"  # or whatever your prefer

gvim आवश्यकता होती है: apt install vim-gtk

संदर्भ


1

Mac OS X के लिए, TextEdit या पाठ के लिए प्राकृतिक पर्यावरण संपादक का उपयोग कर :

git config --global core.editor "open -W -n"

1

सिर्फ इसलिए कि मैं यहां एक बार के समाधान की तलाश में आया था (मेरे मामले में, मैं आमतौर पर उपयोग vimकरता हूं लेकिन इस बार मैं एक ही आदेश के लिए वीएस कोड का उपयोग करना चाहता था) और अन्य लोग भी जानना चाहते हैं:

GIT_EDITOR='code -w' git rebase -i 

यहाँ मेरा git/ hubसंस्करण सिर्फ संदर्भ के लिए है:

git version 2.24.2 (Apple Git-127)
hub version 2.14.1

1

Ubuntu 20:04 पर git के लिए डिफॉल्ट एडिटर बनाने के लिए निम्नलिखित कमांड चलाएँ:

git config --global core.editor vim

0

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

जब मैं रिबेस करने की कोशिश कर रहा था तो मुझे निम्नलिखित त्रुटि हो रही थी: 'संकेत: फ़ाइल बंद करने के लिए आपके संपादक की प्रतीक्षा कर रहा है ... कोड -n -w: कोड: कमांड त्रुटि नहीं मिली: संपादक के साथ एक समस्या थी' कोड -n -w '।'

उसी त्रुटि को दिखाया जब मैं IntelliJ को Git के साथ जोड़ने की कोशिश कर रहा था: यहां छवि विवरण दर्ज करें

समस्या यह थी कि मेरे पास मेरे पर्यावरण पथ चर में कमांड कोड नहीं था । और मैं अपने टर्मिनल से विज़ुअल स्टूडियो कोड का उपयोग नहीं करना चाहता था। इसीलिए इसने "कमांड नहीं मिला" संकेत दिया। मैंने इसे डिलीट करके हल किया

संपादक = कोड -n -w

मेरे .gitconfig फ़ाइल में मुख्य भाग से। गिट ने फिर से ठीक से काम किया।


-1

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

जब आप अपने कमेंट्स को एडिट करना चाहते हैं तो यह टेक्स्टमेट एडिटर खोलता है। टेक्सटमेट कमांड लाइन टूल इंस्टॉल करने की आवश्यकता है।

git config --global core.editor "mate -w"


@ जीवनसे आपका क्या मतलब है?
मतिज

2
मुझे लगता है कि वह इसका मतलब यह है कि यह तुच्छ उत्तर के अनुरूप है?
रूप

हम्म नहीं, यह नहीं है, लेकिन अगर आप विम (जैसे टेक्स्टमेट) के अलावा कुछ और उपयोग करते हैं।
मटज

टेक्स्टमेट में एक "प्रतीक्षा" विकल्प भी है, इसलिए मेरे लिए, यह यह है: git config --global core.editor "/usr/local/bin/mate -w"
त्रिकोणीय

-1

विंडोज उपयोगकर्ताओं के लिए जो किनेक्सिक्स टेक्स्ट एडिटर का उपयोग करना चाहते हैं

'K.sh' नामक एक फ़ाइल बनाएँ, अपने होम डायरेक्टरी (~) में निम्नलिखित पाठ और स्थान जोड़ें:

winpty "C:\Program Files (x86)\Kinesics Text Editor\x64\k.exe" $1

Git प्रॉम्प्ट प्रकार पर:

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