看起来不像
git status
实际上检查我在github上的提交是否与我的本地状态完全同步。由于性能问题,这并不奇怪。我如何强制进行真正的检查?
答案 0 :(得分:8)
您需要先进行抓取。这将更新您的本地仓库以匹配遥控器。
git fetch origin
git status
Fetch不会改变你的工作目录,就像git pull那样。
答案 1 :(得分:4)
简短回答:不,不是。
它将您当前的工作目录与本地HEAD提交进行比较。
来自文档:
显示索引文件与当前HEAD提交之间存在差异的路径,工作树与索引文件之间存在差异的路径,以及工作树中未由Git跟踪的路径(gitignore不会忽略这些路径) [5])。
答案 2 :(得分:3)
这不是git status
背后的意图。您需要使用git diff
代替:
git diff <your (master?) path> <remote path>
这出现了很多。例如:git diff between remote and local repo
答案 3 :(得分:2)
执行git fetch
然后git status
,以便检查您的(例如)带有origin / master的主机(两者都是您机器上的本地主机)将为您提供所需的内容 - 是上游远程存储库中状态的comapre master。
答案 4 :(得分:0)
如何强制进行真正的检查?
git fetch
由于性能问题,这并不令人惊讶。
实际上,即使是本地检查(在git fetch
之后),有时也会过于昂贵:
&#34; git status
&#34;可以花很多周期来计算关系
在当前分支与其上游之间,现在可以
禁用&#34; --no-ahead-behind
&#34;选项。
commit f39a757见commit 3ca1897,commit fd9b544,commit d7d1b49,Jeff Hostetler (jeffhostetler
)(2018年1月9日)。
(由Junio C Hamano -- gitster
--合并于commit 4094e47,2018年3月8日)
status
:为--[no-]ahead-behind
添加status
,为V2格式添加commit
。教#34;
git status
&#34;和&#34;git commit
&#34;接受&#34;--no-ahead-behind
&#34; 和&#34;--ahead-behind
&#34;请求快速或完全提前/后退的参数 报告。&#34;
--no-ahead-behind
&#34;给出,现有的瓷器V2线 &#34;branch.ab +x -y
&#34;被替换为新的&#34;branch.ab +? -?
&#34;行。
这表明分支及其上游是不相等 无需计算完整的前/后值。
status
:支持 - 长格式的前进后退教授长(正常)状态格式以尊重
--no-ahead-behind
参数并跳过可能昂贵的前进/后退计算 在分支和上游之间。教#34;
git status --short --branch
&#34;尊重&#34;--no-ahead-behind
&#34; 跳过计算分支的前/后计数的参数 它的上游只是报告&#39;[different]
&#39;。