我倾向于忘记我曾经隐藏了一些变化。当存储不为空时,我希望看到git status
输出中提到的存储。有没有办法让git status
这样做?
答案 0 :(得分:7)
git status
中的This is now a built-in option,您可以这样做:
[status]
showStash = true
如果您不熟悉编辑git配置文件,可以执行
git config --global status.showStash true
答案 1 :(得分:4)
据我所知,没有内置选项可以做到这一点,但有几种方法可以达到预期的效果。
按照其文档中的说明来源git-prompt.sh
script,并设置GIT_PS1_SHOWSTASHSTATE
变量,例如在~/.bashrc
:
. ~/.bash/git-prompt.sh
GIT_PS1_SHOWSTASHSTATE=1
PROMPT_COMMAND='__git_ps1 "\u@\h:\w" "\\\$ "'
现在,您的命令提示符将在git提示符下的分支名称旁边显示一个美元符号:
user@host:~/repo (master$)$
您可以为所需功能创建别名,但别名不能为status
,它必须与任何内置命令不同:
git config --global alias.vstatus '!git status; git stash list'
这将设置一个全局别名vstatus
(详细状态),只需将git status
和git stash list
背靠背运行。
可以总是创建一个shell别名来拦截git子命令调用,因为忽略了内置命令的git别名。在.bash_aliases
:
git () {
command git "$@" || return # preserve $?
[[ $1 = status ]] && command git stash list
}
在每次git状态之后,这将始终运行git stash list
。当存储空为空时,不会输出任何内容。