By default, Git has no colors when displaying information in the terminal. However, displaying colors is a feature of Git that is only a configuration away.
We'll use the cookbook-tips-tricks
repository:
$ git clone https://github.com/dvaske/cookbook-tips-tricks.git $ cd cookbook-tips-tricks
First, we'll edit and add foo
:
$ echo "And another line" >> foo $ git add foo
Change foo
some more, but don't add it to the staging area:
$ echo "Last line ...so far" >> foo
Create a new file called test
:
$ touch test
The git status
command will show us the status:
$ git status On branch master Your branch is up-to-date with 'origin/master'. Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: foo Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: foo Untracked files: (use "git add <file>..." to include in what will be committed) test
We can set the color.ui
configuration to auto
or true
to get color in the UI when required:
$ git config --global color.ui true $ git status On branch master Your branch is up-to-date with 'origin/master'. Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: foo Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: foo Untracked files: (use "git add <file>..." to include in what will be committed) test
The color.ui
configuration works with a long range of Git commands diff
, log
, and branch
included. The following is an example of git log
when setting color.ui
to true
:
$ git log --oneline --decorate --graph * c111003 (HEAD, origin/master, origin/HEAD, master) Update foo and bar * 270e97b Add bar * 43fd490 Initial commit, adds foo