git状态可以提到存储吗?

时间:2016-05-23 19:29:06

标签: git

我倾向于忘记我曾经隐藏了一些变化。当存储不为空时,我希望看到git status输出中提到的存储。有没有办法让git status这样做?

2 个答案:

答案 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

按照其文档中的说明来源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$)$

git alias

您可以为所需功能创建别名,但别名不能为status,它必须与任何内置命令不同:

git config --global alias.vstatus '!git status; git stash list'

这将设置一个全局别名vstatus(详细状态),只需将git statusgit stash list背靠背运行。

shell别名

可以总是创建一个shell别名来拦截git子命令调用,因为忽略了内置命令的git别名。在.bash_aliases

git () {
    command git "$@" || return # preserve $?
    [[ $1 = status ]] && command git stash list
}

在每次git状态之后,这将始终运行git stash list。当存储空为空时,不会输出任何内容。