有时一个git checkout
命令会给出进度反馈:
$ git checkout develop
Checking out files: 100% (10779/10779), done.
Switched to branch 'develop'
有时它不会,(下一个命令行,相同的 repo 上下文):
$ git checkout master
Switched to branch 'master'
这不是因为分支相等,因为切换回下一个命令会显示以下反馈:
$ git checkout develop
Checking out files: 47% (5067/10779), done.
Switched to branch 'develop'
这也发生在小型回购中。我有一个只有 13 个文件的存储库,当我在分支中添加一个文件并使用 checkout 来回切换时,我没有得到任何反馈。是某种“这需要很长时间,开始显示反馈”的计时器吗?
我搜索了(谷歌,Stackoverflow),但没有找到任何具体的东西。我确实找到了一些补丁文档,其中显示了在 checkout 中添加了一个 --verbose 标志,该标志强制反馈总是发生,但我找不到解释为什么反馈有时在没有该补丁的情况下才会发生。相同的注释指出,只有当 isatty() 返回 true 时才会发生反馈,但这在这里不相关,因为上面的所有命令都输入到同一个 bash 窗口中,这可能是 isatty。
我正在使用 git version 1.8.1.msysgit.1
(从 git-scm.com 下载为 1.8.1.3),据我所知,它没有 --verbose 补丁。