Interactive Demo & Configurator

TIP

Another convenient way to experiment with Git Prompt Kit is to install (even temporarily!) Hometown, a Git Prompt Kit-powered zsh prompt.

Components

These change according to the context and configuration. Adjust those, and come back here to see the result.

TIP

Adjust Configuration and Context, and scroll back here to see the result.

NameValue
GIT_PROMPT_KIT_ACTION
GIT_PROMPT_KIT_AHEAD
GIT_PROMPT_KIT_ASSUMED_UNCHANGED
GIT_PROMPT_KIT_BEHIND
GIT_PROMPT_KIT_CHAR *%%
GIT_PROMPT_KIT_CONFLICTED UU
GIT_PROMPT_KIT_CWD
olets/git-prompt-kit
GIT_PROMPT_KIT_DELETED _D
GIT_PROMPT_KIT_DELETED_STAGED D_
GIT_PROMPT_KIT_DIRTY 0
GIT_PROMPT_KIT_HEAD main
GIT_PROMPT_KIT_PUSH
GIT_PROMPT_KIT_PUSH_AHEAD
GIT_PROMPT_KIT_PUSH_BEHIND
GIT_PROMPT_KIT_REF main
GIT_PROMPT_KIT_REMOTE
GIT_PROMPT_KIT_MODIFIED _M
GIT_PROMPT_KIT_MODIFIED_STAGED M_
GIT_PROMPT_KIT_NEW A_
GIT_PROMPT_KIT_REPO_ROOT olets/git-prompt-kit
GIT_PROMPT_KIT_REPO_SUBDIRECTORY
GIT_PROMPT_KIT_SKIP_WORKTREE
GIT_PROMPT_KIT_STASHES
GIT_PROMPT_KIT_STATUS ??UU_D_MA_D_M_
GIT_PROMPT_KIT_STATUS_EXTENDED
GIT_PROMPT_KIT_TAG
GIT_PROMPT_KIT_UNTRACKED ??
GIT_PROMPT_KIT_USERHOST
olets@dev
* Printed with prompt expansion. The default %%, for example, becomes %

Configuration

All configuration changes you make below will be listed here, ready for copying and pasting into your .zshrc.

Behavior Options

OptionDefaultTypeValue
1integer
1integer
1integer
1integer

Color Options

OptionDefaultType Notes Value
199colorANSI or hex
81colorANSI or hex
39colorANSI or hex
88colorANSI or hex
140colorANSI or hex
109colorANSI or hex
247colorANSI or hex
111colorANSI or hex
216colorANSI or hex
81colorANSI or hex
120colorANSI or hex
81colorANSI or hex
76colorANSI or hex
86colorANSI or hex
162colorANSI or hex
109colorANSI or hex

Content Options

OptionDefaultType Notes Value
1integerundefined
upstreamstringundefined
originstringundefined
()arrayMust be in parentheses
Must match /\(.*\)/
()arrayMust be in parentheses
Must match /\(.*\)/
1integerundefined
0integerundefined

Symbol Options

OptionDefault Verbose Default Type Notes Value
+ahead stringundefined
aheadundefined
assumed-unchangedstringundefined
assumed-unchangedundefined
-behind stringundefined
behindundefined
branch: stringundefined
%%stringRendered as a prompt string. The default renders as %
#stringundefined
commit: stringundefined
UU conflictedstringundefined
conflictedundefined
_D deletedstringundefined
deletedundefined
D_ staged-deletedstringundefined
staged-deletedundefined
@ host: stringundefined
localstringundefined
_M modifiedstringundefined
modifiedundefined
M_ modified-stagedstringundefined
modified-stagedundefined
A_ newstringundefined
newundefined
@{push}push remote: stringundefined
@{u}remote: stringundefined
skip-worktreestringundefined
skip-worktreeundefined
stashesstringundefined
stashesundefined
@tag: stringundefined
?? untrackedstringundefined
untrackedundefined
**The default if GIT_PROMPT_KIT_VERBOSE_DEFAULT_SYMBOLS is non-zero.

Context

Terminal

ContextValue

User

ContextValue

Session

ContextValue

Directory

ContextValue

Git ref

Context Notes Value
Only relevant when on a branch
Only relevant when on a branch
Only relevant when on a branch
Only relevant when on a branch with a remote
Only relevant when on a branch with a remote

Triangular workflow

Context Notes Value
Only relevant when on a branch
Only relevant when on a branch with a distinct push remote
Only relevant when on a branch with a distinct push remote
Only relevant when on a branch with a distinct push remote

Git status

ContextValue

Extended Git status

ContextValue