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扩展名
。