我们试图了解为什么在查看文件的历史记录/日志时会得到不同的结果,具体取决于我们使用的工具。 回购在TFS Git。 我们可以使用GitBash或Visual Studio 2015克隆它,我们得到相同的不同结果 给定一个特定的文件 使用GitBash:
git log <filename>
什么都不返回。
update - 我发现这是因为没有指定文件的整个路径。我只使用文件名。我仍然不知道为什么没有显示TFS中的最新更新
使用TFS Web界面历史记录显示9个更改,包括1个还原。 使用TortoiseGit Show日志返回4个提交。它不显示最近的提交。但是,如果我选择&#34;显示整个项目&#34;我可以找到最新的提交。
有人可以解释这些操作实际执行的不同以及结果会有何不同?
答案 0 :(得分:1)
右键单击文件并显示日志,TortoiseGit仅显示该文件的日志。因此,该文件仅在这4次提交中发生了变化。
当检查“日志消息”对话框的“显示整个项目”时,它会显示整个项目的历史记录。因此,您可以看到所有提交,包括与该文件无关的提交。
关于TFS,对不起,不知道!希望上面的信息可以帮助你。
答案 1 :(得分:0)
我想我明白发生了什么。
git log --all <path>
显示了需要应用的更改,以使文件达到当前状态。
为了发现当文件不合适时谁对文件做了什么。然而
git log --full-history <path>
将为您提供包括每次合并在内的每一项更改。
从TFS网站看到的TFS Git似乎显示了删除合并提交的历史版本,但似乎还包括比常规Git更多的提交。它似乎还包括恢复和正在恢复的提交。有用的是TFS Git中的--full-history选项。