Recentemente ho visto che la git
console in Windows è colorata, ad esempio verde per aggiunte, rosso per eliminazioni, ecc. Come posso colorare la mia git
console in quel modo?
Per installarlo, ho usato il comando: $ sudo apt-get install git-core
Recentemente ho visto che la git
console in Windows è colorata, ad esempio verde per aggiunte, rosso per eliminazioni, ecc. Come posso colorare la mia git
console in quel modo?
Per installarlo, ho usato il comando: $ sudo apt-get install git-core
Risposte:
Come notato da @VonC , il color.ui
valore predefinito è auto
Git 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 congit
i 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 config
documentazione :
color.ui
: Questa variabile determina il valore predefinito per variabili comecolor.diff
ecolor.grep
che 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'--color
opzione. Impostarlo sualways
se si desidera che tutti gli output non destinati al consumo della macchina utilizzino il colore,true
oauto
se si desidera che tali output utilizzino il colore quando sono scritti sul terminale, o sufalse
onever
se si preferisce che i comandi git non utilizzino il colore a meno che non siano abilitati esplicitamente con alcuni altra configurazione o l'--color
opzione.
auto
è abbastanza.
ui = auto
voce alla [color]
sezione nel ~/.gitconfig
file 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 auto
non 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 auto
era Git Bash sul mio PC Windows.
Nel tuo ~/.gitconfig
file, 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 config
comando " " 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 config
ha permesso a lungo ai chiamanti di fornire un "identificatore del tipo", che istruiscegit config
di (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=color
e--default
di sostituirla--get-color
.Tuttavia, usiamo tradizionalmente
--color
per significare "colorare questo output", invece di "questo valore dovrebbe essere trattato come un colore".Attualmente,
git config
non supporta questo tipo di colorazione, ma dovremmo fare attenzione a non occuparci troppo presto di questa opzione, in modo chegit config
possa supportare--color
(nel senso tradizionale) in futuro, se lo si desidera.In questa patch, supportiamo
--type=<int|bool|bool-or-int|...>
oltre a--int
,--bool
e 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 --bool
e --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$HOME
e~user
alla 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=color
output 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-color
ometterà la nuova riga finale stampata da--type=color
).
Puoi vedere git config --type=bool
usato 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--bool
Firmato-fuori-da: Lucius Hu
L'
--bool
opzione togit-config
è contrassegnata come cronologica e si consiglia agli utenti di utilizzare--type=bool
invece.
Questo commit sostituisce tutte le occorrenze di--bool
nei 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