如何检查git历史的强制推送?

时间:2018-07-09 07:49:59

标签: git visual-studio tfs git-push

在我们的项目中,我们使用带有git仓库的TFS服务器–我们已经看到了一些奇怪的行为,即在进行某些提交/推送后,某人已覆盖了其他人的工作,但他为此仅使用了VS,而没有使用命令行。我怀疑VS使用了force选项来覆盖这些更改,但我没有为此做证明。有什么方法可以检查日志,以查看发生了什么以及为何更改被覆盖?

2 个答案:

答案 0 :(得分:0)

TFS / VSTS能够显示分支的“分支更新”。根据您使用的版本,它应该在Web UI上列为“分支更新”或“推送”选项卡。我没有指向此页面文档的链接,但希望可以找到它。

发生的另一种可能性是,在客户端上如何合并更改存在问题。由于Git如何简化历史记录,因此可以使它看起来好像分支中从未存在过更改。这是有关此主题的博客文章:

Git lost my changes: Taking a look at Git's history simplification

答案 1 :(得分:0)

这似乎与托管Git仓库的TFS服务器无关,而与本地仓库有关。您可以使用git reflog命令来执行检查选项。

  

参考日志或“ reflogs”记录分支的提示和   其他参考已在本地存储库中更新。 Reflog是   在各种Git命令中很有用,用于指定a的旧值   参考。

更多详细信息,请咨询官方tutorial