Git कंसोल को कैसे कलर करें?


371

मैंने हाल ही में देखा कि gitविंडोज में कंसोल रंगीन है, जैसे कि परिवर्धन के लिए हरा, हटाने के लिए लाल, आदि। मैं अपने gitकंसोल को इस तरह कैसे रंग दूं ?

इसे स्थापित करने के लिए, मैंने कमांड का उपयोग किया: $ sudo apt-get install git-core


6
Git1.8.4 शुरू करते हुए, आपको डिफ़ॉल्ट रूप से रंग देखना चाहिए। देखें नीचे मेरा उत्तर
वॉन

1
उबंटू 14.04 पर @VonC गिट 1.9.1 नहीं हुआ। जोएलपुरा के जवाब से स्वयं को कॉन्फ़िगर करना था।
इज़काता

1
@ इज़कट अजीब, मैं इसे बाद में परीक्षण करूँगा, लेकिन 2.1 git के बारे में क्या? (जैसा कि मैंने नीचे stackoverflow.com/questions/10998792/… पर टिप्पणी की है )
VONC

जवाबों:


682

जैसा @VonC ने नोट किया है , Git 1.8.4 के बाद से चूकcolor.uiauto


Unix & Linux Stackexchange सवाल से git के आउटपुट को कैसे कलर करें? और जवाब @Evgeny :

git config --global color.ui auto

color.uiएक मेटा विन्यास है कि सभी विभिन्न शामिल है color.*विन्यास के साथ उपलब्ध gitआदेशों। इसमें गहराई से समझाया गया है git help config

इसलिए मूल रूप से यह अलग color.*सेटिंग्स अलग करने से आसान और अधिक भविष्य के प्रमाण है ।

git configप्रलेखन से गहराई से स्पष्टीकरण :

color.ui: यह चर इस तरह के रूप में चर के लिए डिफ़ॉल्ट मान निर्धारित करता है color.diffऔर color.grepप्रति कमांड परिवार के रंग के उपयोग को नियंत्रित करता है। इसका दायरा विस्तृत होगा क्योंकि --colorविकल्प के लिए डिफ़ॉल्ट सेट करने के लिए अधिक कमांड कॉन्फ़िगरेशन सीखते हैं । यह निर्धारित करें कि alwaysक्या आप चाहते हैं कि सभी आउटपुट रंग के उपयोग के लिए मशीन की खपत के लिए अभिप्रेत न हों, trueया autoयदि आप चाहते हैं कि ऐसा आउटपुट टर्मिनल पर लिखे जाने पर रंग का उपयोग करें, falseया neverयदि आप पसंद करते हैं तो रंग का उपयोग न करने का आदेश दें जब तक कि कुछ के साथ स्पष्ट रूप से सक्षम न हो। अन्य विन्यास या --colorविकल्प।


11
यह OSX पर भी काम करता है, न केवल लाइनक्स के रूप में सवाल पूछ रहा था
StackExchange क्या बिल्ली

शायद अंत में 'सच' जोड़ने की जरूरत है। Git config --global color.ui ऑटो सच
वंशी

6
@ स्केप्टर: नहीं, autoकाफी है।
जोएल पुर्रा

2
@ फनी: हाँ, यह लगातार है।
जोएल पुरा

5
यह लगातार है क्योंकि यह उपयोगकर्ता की फ़ाइल में अनुभाग में ui = autoप्रविष्टि जोड़ता है । [color]~/.gitconfig
एंड्रीस

55

उदाहरण के लिए देखें https://web.archive.org/web/20080506194329/http://www.arthurkoziel.com/2008/05/02/git-configuration/

दिलचस्प हिस्सा है

रंगीन उत्पादन:

git config --global color.branch auto
git config --global color.diff auto
git config --global color.interactive auto
git config --global color.status auto

3
मैं git के पुराने संस्करण का उपयोग कर रहा हूं और सेटिंग color.ui autoने मेरे लिए काम नहीं किया, यह किया। धन्यवाद।
मैट के

30

अगले कोड में अपनी .gitconfig फ़ाइल में जोड़ें:

  [color]
    ui = auto
  [color "branch"]
    current = yellow reverse
    local = yellow
    remote = green
  [color "diff"]
    meta = yellow bold
    frag = magenta bold
    old = red bold
    new = green bold
  [color "status"]
    added = yellow
    changed = green
    untracked = cyan

7

यदि आप इसे पूछते हैं तो Git अपने आउटपुट का अधिकांश रंग स्वचालित रूप से रंग देता है। आप क्या चाहते हैं और कैसे रंग के बारे में बहुत विशिष्ट प्राप्त कर सकते हैं; लेकिन सभी डिफ़ॉल्ट टर्मिनल रंग चालू करने के लिए, color.ui को सही पर सेट करें:

git config --global color.ui true

6

उबंटू या किसी अन्य प्लेटफ़ॉर्म में (हाँ, विंडोज भी!); git1.8.4 शुरू करना , जो 2013-08-23 को जारी किया गया था , आपको कुछ भी नहीं करना होगा :

कई ट्यूटोरियल यूज़र्स को सिखाते हैं कि "color.ui" को "auto" में सेट करें क्योंकि आप सेट करने के बाद पहली चीज़ " user.name/email" को Git में पेश करेंगे। अब वैरिएबल " auto" पर डिफॉल्ट करता है ।

तो आप डिफ़ॉल्ट रूप से रंग देखेंगे।


2
(ठीक है, यहां तक ​​कि विंडोज, टर्मिनल पर निर्भर करता है: stackoverflow.com/a/12133244/6309 )
VONC

2
2014 में उबंटू का उपयोग करते हुए, गिट स्थापित किया और अभी भी चलना था git config --global color.ui auto। मेरे मैक के लिए भी यही सच है, केवल डिफ़ॉल्ट जो autoमेरे विंडोज पीसी पर गिट बैश था।
सरगस

1
@sargas ज़रूर, आपको एक PPA से इंस्टॉल करने की आवश्यकता है : लॉन्चपैड. net/~git - core/+archive/ppa ( उबंटू के लिए) या git-scm.com/download/mac (मैक के लिए)
VonC

1
मैं देख रहा हूं, इसलिए यह स्रोत पर निर्भर करता है। मैं इस पर टिप्पणी करने के लिए आपके समय की सराहना करता हूं।
सरगास

6

अपनी ~/.gitconfigफ़ाइल में, बस इसे जोड़ें:

[color]
  ui = auto

यह आपके सभी git कमांड का ध्यान रखता है।


5

एक और तरीका है .gitconfig, उदाहरण के लिए (कोई मौजूद नहीं है तो बनाएं) संपादित करें :

vim ~/.gitconfig

और फिर जोड़ें:

[color]
  diff = auto
  status = auto
  branch = auto

3
जैसा कि @ चूनताओ-लू का उल्लेख [color] ui = autoपर्याप्त है।
चाको मैथ्यू

5

GIT डिफ़ॉल्ट रूप से रंगीन आउटपुट का उपयोग करता है, लेकिन कुछ सिस्टम जैसे कि CentOS के रूप में यह सक्षम नहीं है। आप इसे इस तरह से सक्षम कर सकते हैं

git config --global color.ui  true 
git config --global color.ui  false 
git config --global color.ui  auto 

आप यहाँ से अपनी आवश्यक कमांड चुन सकते हैं।

यहां --global आपके सिस्टम में प्रत्येक रिपॉजिटरी के लिए कार्रवाई लागू करने के लिए वैकल्पिक है। यदि आप केवल वर्तमान भंडार के लिए रंग लगाना चाहते हैं तो आप कुछ इस तरह से कर सकते हैं -

 git config color.ui  true 

1

2.18 Git के साथ, आप कंसोल में रंगों को कैसे निर्दिष्ट करना चाहते हैं, इस पर आपका अधिक नियंत्रण है।
" git config" कमांड अलग-अलग विकल्पों का उपयोग करता है जैसे " --int", " --bool", आदि यह निर्दिष्ट करने के लिए कि कॉलर किस प्रकार का मूल्य चाहता है, इसकी व्याख्या की जाए

एक नया " --type=<typename>" विकल्प पेश किया गया है, जो नए प्रकारों को परिभाषित करने के लिए क्लीनर बना देगा।

देखें fb0dc3b प्रतिबद्ध (18 अप्रैल 2018), और 0a8950b प्रतिबद्ध द्वारा (09 अप्रैल 2018) टेलर ब्लू ( ttaylorr)
(द्वारा विलय Junio सी Hamano - gitster- में e3e042b प्रतिबद्ध , 08 मई 2018)

builtin/config.c: के --type=<type>लिए पसंदीदा उपनाम के रूप में समर्थन करते हैं--<type>

git configलंबे समय से कॉल करने वालों के लिए 'टाइप स्पेसियर' प्रदान करने की क्षमता की अनुमति देता है, जो यह निर्देश देता है git configकि (1) यह सुनिश्चित करता है कि आने वाले मूल्यों को उस प्रकार के रूप में व्याख्या की जा सकती है, और (2) आउटगोइंग मूल्यों को उस प्रकार के तहत विहित किया जाता है।

एक अन्य श्रृंखला में, हम इस कार्यक्षमता को बढ़ाने --type=colorऔर --defaultबदलने के लिए प्रस्तावित करते हैं --get-color

हालांकि, हम परंपरागत रूप --colorसे "इस आउटपुट को रंगीन बनाने" का उपयोग करते हैं, इसके बजाय "इस मूल्य को एक रंग के रूप में माना जाना चाहिए"।

वर्तमान में, git configइस तरह के रंगीकरण का समर्थन नहीं करता है, लेकिन हमें जल्द ही इस विकल्प पर स्क्वाट करने से बचने के लिए सावधान रहना चाहिए, ताकि भविष्य में (पारंपरिक अर्थों में) git configसमर्थन कर सकें --color, यदि यह वांछित है।

इस पैच में, हम --type=<int|bool|bool-or-int|...>इसके अलावा , और आदि का समर्थन करते हैं --int, यह उपर्युक्त आगामी पैच को एक डिफ़ॉल्ट मान के साथ एक रंग मान को क्वेरी करने के लिए समर्थन के बिना अनुमति देता है --bool
--type=color --default=...--color

हम शिकायत करने के ऐतिहासिक व्यवहार को बनाए रखते हैं जब कई, विरासत-शैली के --<type>झंडे दिए जाते हैं, साथ ही साथ इसे नए-नए शैली के --type=<type>झंडे के लिए विस्तारित किया जाता है । --int --type=int(और इसकी कम्यूटेटिव जोड़ी) शिकायत नहीं करती, लेकिन --bool --type=int(और इसकी कम्यूटेटिव जोड़ी) करती है।

तो इससे पहले कि आप --boolऔर --int, अब ( प्रलेखन ) था:

--type <type>

' git config' यह सुनिश्चित करेगा कि किसी भी इनपुट या आउटपुट दिए गए प्रकार की बाधा (ओं) के तहत मान्य है, और आउटगोइंग मूल्यों को <type>कैनोनिकल रूप में रद्द कर देगा।

मान्य में <type>शामिल हैं:

  • ' bool': true"या" या " false" के रूप में canonicalize मान ।
  • ' int': मानों को सरल दशमलव संख्याओं के रूप में निर्धारित करता है। ' k', ' m', या ' g' का एक वैकल्पिक प्रत्यय इनपुट पर मूल्य 1024, 1048576 या 1073741824 से गुणा किया जाएगा।
  • ' bool-or-int': ऊपर वर्णित के अनुसार या तो ' bool' या ' int' के अनुसार विहित ,।
  • ' path': एक प्रमुख जोड़कर canonicalize ~के मूल्य के $HOMEऔर ~userनिर्दिष्ट उपयोगकर्ता के लिए होम निर्देशिका के लिए। मान सेट करते समय इस विनिर्देश का कोई प्रभाव नहीं है (लेकिन आप git config section.variable ~/अपने शेल को विस्तार करने के लिए कमांड लाइन से उपयोग कर सकते हैं ।)
  • ' expiry-date': एक नियत या सापेक्ष दिनांक-स्ट्रिंग से टाइमस्टैम्प में परिवर्तित करके कैनोनिकलाइज़। मान सेट करते समय इस विनिर्देश का कोई प्रभाव नहीं है।
--bool::
--int::
--bool-or-int::
--path::
--expiry-date::
  Historical options for selecting a type specifier. Prefer instead `--type`,
(see: above).

ध्यान दें कि Git 2.22 (Q2 2019) बताता है कि " git config --type=color ..." को बदलने के लिए है " git config --get-color", लेकिन एक मामूली अंतर है जिसे प्रलेखित नहीं किया गया था, जो अब तय हो गया है।

जेफ किंग ( ) द्वारा प्रतिबद्ध cd8e759 (05 मार्च 2019) देखें । (द्वारा विलय Junio सी Hamano - - में f6c75e3 प्रतिबद्ध , 20 मार्च 2019)peff
gitster

config: डॉक्यूमेंट --type=colorआउटपुट एक पूरी लाइन है

भले ही नया " --type=color" विकल्प " git config" का मतलब पारंपरिक " --get-color" विकल्प के साथ ऊपर की ओर संगत होना है , बाद के विपरीत, इसका उत्पादन एक अधूरी रेखा नहीं है जो अंत में एलएफ की कमी है।
जो इसे " git config --type=bool" जैसे अन्य प्रकार के आउटपुट के अनुरूप बनाता है ।

इसे दस्तावेज़ित करें , क्योंकि यह कभी-कभी उपयोगकर्ताओं को हैरान कर देता है।

अब यह पढ़ता है:

--type=color [--default=<default>]से अधिक पसंद किया जाता है --get-color (लेकिन ध्यान दें कि --get-colorइसके द्वारा छपे अनुगामी न्यूलाइन को छोड़ दिया जाएगा --type=color)।


आप नमूना टेम्पलेट्स में git config --type=bool" git config --bool" कॉल को बदलने के लिए Git 2.26 (Q1 2020) के साथ उपयोग कर सकते हैं ।

लुसियस हू ( ) द्वारा प्रतिबद्ध 81e3db4 (19 जनवरी 2020) देखें । (द्वारा विलय Junio सी Hamano - - में प्रतिबद्ध 7,050,624 , 30 जनवरी 2020)lebensterben
gitster

templates: पदावनत प्रकार का विकल्प ठीक करें --bool

साइन-ऑफ-बाय: लुसियस हू

--boolविकल्प के लिए git-configऐतिहासिक रूप में चिह्नित है, और उन का उपयोग करने के लिए सिफारिश कर रहे हैं --type=boolके बजाय।
यह --boolटेम्पलेट में होने वाली सभी घटनाओं को बदल देता है ।

यह भी ध्यान रखें कि, कोई अन्य पदावनत प्रकार के विकल्प सहित, पाए जाते हैं --int, --bool-or-int, --path, या --expiry-date


0

यहाँ देखें: https://nathanhoad.net/how-to-colours-in-git/

कदम:

  1. संपादन के लिए ~ ~ .gitconfig खोलें

    vi ~ / .gitconfig

  2. निम्नलिखित कोड चिपकाएँ:

    [color]
      ui = auto
    [color "branch"]
      current = yellow reverse
      local = yellow
      remote = green
    [color "diff"]
      meta = yellow bold
      frag = magenta bold
      old = red bold
      new = green bold
    [color "status"]
      added = yellow
      changed = green
      untracked = cyan
    
  3. फ़ाइल सहेजें।

बस अपने स्थानीय रेपो और करो में किसी भी फ़ाइल को बदलें

git status

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