Git即使在“push--force”之后也会显示差异?

Git即使在“push--force”之后也会显示差异?,git,atlassian-sourcetree,Git,Atlassian Sourcetree,简化: 在我的master分支中,我添加了一些垃圾。 然后我把它推到原点/主控点 后来我发现添加垃圾是一个错误。 我知道我可以/应该创建一个恢复提交 但我没有。我做了一个git重置--hard 但现在我希望原点/主控形状与我的本地图形完全相同 显然我不能推,因为git告诉我推之前要拉 所以我做了推-力: 但即使在这之后,sourcetree也表明它们并不相同: 即使我检查了更改,也看不到任何更改: 问题: 如果远程master和本地master没有区别,为什么sourcetree显示我

简化:

在我的
master
分支中,我添加了一些垃圾。
然后我把它推到原点/主控点

后来我发现添加垃圾是一个错误。 我知道我可以/应该创建一个恢复提交

但我没有。我做了一个git重置--hard

但现在我希望原点/主控形状与我的本地图形完全相同

显然我不能推,因为git告诉我推之前要拉

所以我做了推-力:

但即使在这之后,sourcetree也表明它们并不相同:

即使我检查了更改,也看不到任何更改:

问题:

如果远程
master
和本地
master
没有区别,为什么sourcetree显示我
pull

即使是
git状态
也显示我很好(没有拉):


一般建议:每当包装CLI程序或库的GUI出现问题时,最好直接检查实际的CLI程序或库


在这种情况下,运行获取:

git fetch origin
然后使用以下命令检查分支指向的位置:

git log master origin/master
或许:

git branch --all --verbose
甚至:

git show master
git show origin/master
允许您检查分支实际指向哪个提交(散列),从而确认(或不确认)GUI是否有问题


即使您确认SourceTree在重新打开时没有显示问题,我也会直接与Git再次检查,以防万一。

有时候SourceTree与您的本地存储库不同步。发生这种情况时,只需告诉Sourcetree使用F5(Windows)或⌘+R(macOS)。

SourceTree定期检查远程状态

解决方案1:只需重新打开Sourcetree即可

解决方案2:工具>选项>常规每X分钟检查一次默认遥控器的更新。 将X设置为1/2以更快地查看状态更改。与图像一样,您可以在1分钟后看到更新的状态


希望这会有所帮助。

可能是sourcetree的问题。您可以重新打开sourcetree并检查。@确实未发布。重新打开-解决它。请将其作为答案发布,以便对其他人有所帮助。无需关闭或重新打开,只需使用
F5
刷新即可⌘
+
R
。Windows版本的SourceTree很糟糕(在Mac上它可以正常工作)。在Windows上,我正在使用并推荐
Git扩展名