Recentemente ho visto che la gitconsole in Windows è colorata, ad esempio verde per aggiunte, rosso per eliminazioni, ecc. Come posso colorare la mia gitconsole in quel modo?
Per installarlo, ho usato il comando: $ sudo apt-get install git-core
Recentemente ho visto che la gitconsole in Windows è colorata, ad esempio verde per aggiunte, rosso per eliminazioni, ecc. Come posso colorare la mia gitconsole in quel modo?
Per installarlo, ho usato il comando: $ sudo apt-get install git-core
Risposte:
Come notato da @VonC , il color.uivalore predefinito è autoGit 1.8.4
Dalla domanda Unix e Linux su Stackexchange Come colorare l'output di git? e la risposta di @Evgeny :
git config --global color.ui auto
La
color.uiè una configurazione meta che comprende tutte le diversecolor.*configurazioni disponibili congiti comandi. Questo è spiegato in modo approfondito ingit help config.
Quindi, in pratica, è più facile e più a prova di futuro che impostare le diverse color.*impostazioni separatamente.
Spiegazione approfondita dalla git configdocumentazione :
color.ui: Questa variabile determina il valore predefinito per variabili comecolor.diffecolor.grepche controllano l'uso del colore per famiglia di comandi. Il suo ambito si espanderà man mano che altri comandi apprenderanno la configurazione per impostare un valore predefinito per l'--coloropzione. Impostarlo sualwaysse si desidera che tutti gli output non destinati al consumo della macchina utilizzino il colore,trueoautose si desidera che tali output utilizzino il colore quando sono scritti sul terminale, o sufalseoneverse si preferisce che i comandi git non utilizzino il colore a meno che non siano abilitati esplicitamente con alcuni altra configurazione o l'--coloropzione.
autoè abbastanza.
ui = autovoce alla [color]sezione nel ~/.gitconfigfile dell'utente .
Ad esempio, consultare https://web.archive.org/web/20080506194329/http://www.arthurkoziel.com/2008/05/02/git-configuration/
La parte interessante è
Uscita colorata:
git config --global color.branch auto git config --global color.diff auto git config --global color.interactive auto git config --global color.status auto
color.ui autonon ha funzionato per me, questo ha funzionato. Grazie.
Aggiungi al tuo prossimo file .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
In Ubuntu o qualsiasi altra piattaforma (sì, anche Windows!); a partire da git1.8.4 , che è stato rilasciato il 23-08-2013 , non dovrai fare nulla :
Molti tutorial insegnano agli utenti a impostare "color.ui" su "auto" come prima cosa dopo aver impostato "
user.name/email" per presentarsi a Git. Ora la variabile di default è "auto".
Quindi vedrai i colori di default.
git config --global color.ui auto. Lo stesso vale per il mio Mac, l'unico che per impostazione predefinita autoera Git Bash sul mio PC Windows.
Nel tuo ~/.gitconfigfile, aggiungi semplicemente questo:
[color]
ui = auto
Si prende cura di tutti i tuoi comandi git.
Un altro modo è modificare il .gitconfig(crearne uno se non esiste), ad esempio:
vim ~/.gitconfig
e quindi aggiungere:
[color]
diff = auto
status = auto
branch = auto
[color] ui = autoè sufficiente.
GIT utilizza l'output colorato per impostazione predefinita, ma su alcuni sistemi come CentOS non è abilitato. Puoi abilitarlo in questo modo
git config --global color.ui true
git config --global color.ui false
git config --global color.ui auto
Puoi scegliere il comando richiesto da qui.
Qui --global è facoltativo per applicare un'azione per ogni repository nel tuo sistema. Se desideri applicare la colorazione solo per il repository corrente, puoi fare qualcosa del genere:
git config color.ui true
Con Git 2.18, hai un maggiore controllo su come vuoi specificare i colori nella console.
Il git configcomando " " utilizza opzioni separate, ad esempio " --int", " --bool", ecc. Per specificare quale tipo il chiamante desidera che il valore venga interpretato come .
È --type=<typename>stata introdotta una nuova " " opzione, che renderebbe più pulito definire nuovi tipi.
Vedi commit fb0dc3b (18 aprile 2018) e commit 0a8950b (09 aprile 2018) di Taylor Blau ( ttaylorr) .
(Unito da Junio C Hamano - gitster- in commit e3e042b , 08 maggio 2018)
builtin/config.c: supporto--type=<type>come alias preferito per--<type>
git configha permesso a lungo ai chiamanti di fornire un "identificatore del tipo", che istruiscegit configdi (1) assicurare che i valori in arrivo possano essere interpretati come quel tipo e (2) che i valori in uscita siano canonizzati sotto quel tipo.In un'altra serie, proponiamo di estendere questa funzionalità con
--type=colore--defaultdi sostituirla--get-color.Tuttavia, usiamo tradizionalmente
--colorper significare "colorare questo output", invece di "questo valore dovrebbe essere trattato come un colore".Attualmente,
git confignon supporta questo tipo di colorazione, ma dovremmo fare attenzione a non occuparci troppo presto di questa opzione, in modo chegit configpossa supportare--color(nel senso tradizionale) in futuro, se lo si desidera.In questa patch, supportiamo
--type=<int|bool|bool-or-int|...>oltre a--int,--boole così via.
Ciò consente alla patch sopracitata in arrivo di supportare l'interrogazione di un valore di colore con un valore predefinito via--type=color --default=..., senza sperperare--color.Manteniamo il comportamento storico di lamentarci quando
--<type>vengono fornite più bandiere in stile legacy , oltre a estenderlo a--type=<type>bandiere di nuovo stile in conflitto .--int --type=int(e la sua coppia commutativa) non si lamenta, ma--bool --type=int(e la sua coppia commutativa).
Quindi prima avevi --boole --int, ora ( documentazione ):
--type <type>
'
git config' assicurerà che qualsiasi input o output sia valido in base ai vincoli di tipo dato e canonicalizzerà i valori in uscita in<type>forma canonica.Sono validi
<type>:
- '
bool': canonicalizza i valori come "true" o "false".- '
int': canonicalizza i valori come semplici numeri decimali. Un suffisso facoltativo di 'k', 'm' o 'g' farà sì che il valore venga moltiplicato per 1024, 1048576 o 1073741824 al momento dell'input.- '
bool-or-int': canonicalizza secondo 'bool' o 'int', come descritto sopra.- '
path': canonicalizza aggiungendo un lead~al valore di$HOMEe~useralla home directory per l'utente specificato. Questo identificatore non ha alcun effetto durante l'impostazione del valore (ma è possibile utilizzaregit config section.variable ~/dalla riga di comando per consentire alla shell di eseguire l'espansione).- '
expiry-date': canonicalizza convertendo da una stringa di data fissa o relativa in un timestamp. Questo identificatore non ha alcun effetto durante l'impostazione del valore.
--bool::
--int::
--bool-or-int::
--path::
--expiry-date::
Historical options for selecting a type specifier. Prefer instead `--type`,
(see: above).
Nota che Git 2.22 (Q2 2019) spiega " git config --type=color ..." è destinato a sostituire " git config --get-color", ma c'è una leggera differenza che non è stata documentata, che ora è stata risolta.
Vedi commit cd8e759 (05 mar 2019) di Jeff King ( peff) .
(Unita da Junio C Hamano - gitster- in commit f6c75e3 , 20 mar 2019)
config: l'--type=coloroutput del documento è una riga completaAnche se la nuova "
--type=color" opzione su "git config" è pensata per essere compatibile verso l'alto con la tradizionale "--get-color" opzione, a differenza di quest'ultima, il suo output non è una linea incompleta alla quale manca la LF.
Ciò lo rende coerente con l'output di altri tipi come "git config --type=bool".Documentalo , poiché a volte sorprende gli utenti ignari.
Questo ora dice:
--type=color [--default=<default>]è preferibile--get-color(ma si noti che--get-colorometterà la nuova riga finale stampata da--type=color).
Puoi vedere git config --type=boolusato con Git 2.26 (Q1 2020) per sostituire "git config --bool " le chiamate nei modelli di esempio.
Vedi commit 81e3db4 (19 gennaio 2020) di Lucius Hu ( lebensterben) .
(Unita da Junio C Hamano - gitster- in commit 7050624 , 30 gennaio 2020)
templates: correzione dell'opzione di tipo obsoleto--boolFirmato-fuori-da: Lucius Hu
L'
--boolopzione togit-configè contrassegnata come cronologica e si consiglia agli utenti di utilizzare--type=boolinvece.
Questo commit sostituisce tutte le occorrenze di--boolnei modelli.Si noti inoltre che, altre opzioni di tipo deprecato si trovano, tra cui
--int,--bool-or-int,--path, o--expiry-date.
fare riferimento qui: https://nathanhoad.net/how-to-colours-in-git/
passaggi:
Apri ~ / .gitconfig per la modifica
vi ~ / .gitconfig
Incolla il seguente codice:
[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
Salva il file.
Basta modificare qualsiasi file nel repository locale e fare
git status