Git 我如何才能看到我有多少剩余的回扣?

Git 我如何才能看到我有多少剩余的回扣?,git,git-rebase,Git,Git Rebase,我如何才能看到在进行再基地时,还有多少工作要做 也就是说,我想看看git还有多少工作要检查。如果您正在使用,则在解决交互重新基础期间的冲突时,您的提示将显示类似于|重新基础-I(x/y),其中x是冲突发生的y中的重新基础步骤。您可能正在寻找正常重新基础而不是交互式重新基础的此信息 对于非交互式折扣,不会显示该信息。但是,您可以通过查看rebase apply目录找到它 在那个目录里有你需要的所有信息。 特别是如果您使用默认的.git目录位置运行,您可以通过运行以下命令找到它 cat .git/r

我如何才能看到在进行再基地时,还有多少工作要做


也就是说,我想看看git还有多少工作要检查。

如果您正在使用,则在解决交互重新基础期间的冲突时,您的提示将显示类似于
|重新基础-I(x/y)
,其中
x
是冲突发生的
y
中的重新基础步骤。

您可能正在寻找正常重新基础而不是交互式重新基础的此信息

对于非交互式折扣,不会显示该信息。但是,您可以通过查看rebase apply目录找到它

在那个目录里有你需要的所有信息。 特别是如果您使用默认的.git目录位置运行,您可以通过运行以下命令找到它

cat .git/rebase-apply/next
cat .git/rebase-apply/last
如果您想知道当前正在应用的提交,那么可以使用以下命令

cat .git/rebase-apply/original-commit
如果您想查看正在应用的实际修补程序,那么可以查看.git/rebase apply

中的编号文件,从
git
version 2.26开始 下面是用于打印重基进度的shell命令:

( RMD="$( git rev-parse --git-path 'rebase-merge/' )" && N=$( cat "${RMD}msgnum" ) && L=$( cat "${RMD}end" ) && echo "${N} / ${L}" ; )
示例输出如下所示

4 / 7
您可以修改最后一个
echo
命令参数,以使用您喜欢的格式进行打印


对于具有版本的
git
,如果您只想查看一下,并且正在使用Bash,可以运行:
\uu git\u ps1
。它将显示类似于
(feature/avarias | MERGING)(base)
,但与重新基址有关。此字符串用于通过将其分配给变量PS1来组成提示。这听起来与冲突无关,它听起来好像OP想知道当前正在执行的步骤。@EdwardThomson您是对的,先生。@jubobs,当rebase取得很大进展时,它会显示一个计数器,如(10/35),因此,信息必须是可能的,从2.26版的
git
开始,
git-rebase$到$Branch
命令现在默认触发交互式rebase。这个答案不再适用于那种情况。请看我在这里的答案——寻找一个合适的解决方案。只需注意:这些命令只能在Linux上工作。只列出目录可能也很有用。@MattVukomanovic,我不太清楚你所说的“仅在Linux上工作”到底是什么意思。它在GNU+Linux、macOS和windows中工作。它在ZSH和Bash中工作得非常好。我确实在Cygwin中使用了ZSH。“Git for Windows”附带的Bash作为shell。啊,我在Windows上不使用Git Bash,我使用cmd.exe和系统文件夹中包含的linux工具,所以这就是混淆。@MattVukomanovic,我也不太使用Bash for Windows。至少不是外壳本身。我确实使用了Cygwin(是的,它有点慢:()),这对我来说比windows中的任何东西都要好。
( RaD="$( git rev-parse --git-path 'rebase-apply/' )" && N=$( cat "${RaD}next" ) && L=$( cat "${RaD}last" ) && echo "${N} / ${L}" ; )