我正在处理一个包含大量文件的大型仓库。我在很多方面都做了很小的改动(并没有做出任何改变),并且希望能够循环改变历史,看看究竟发生了什么变化;类似于使用git stash -p
命令时发生的情况。这可能吗?
相当多:我在不同的文件中改变了很多小东西,然后出现了一些问题,我试图弄清楚这是什么改变了。
答案 0 :(得分:2)
假设:
选项:
git status
告诉你你改变了什么(显然)git diff
(如果您执行了git add
git diff [branchname/commit]
(它告诉您工作树和分支机构/提交之间的区别 - 因此git diff HEAD
或git diff master
很有用)--patch
--stat
。答案 1 :(得分:0)
您可以使用 Tortoise Git 软件,该软件将为您提供GUI以查看每个文件中的所有更改。
然后转到您的存储库,右键单击(假设您正在使用Windows)并将鼠标悬停在TortoiseGit选项上,然后选择检查修改选项卡,如下图所示
这将打开一个新对话框,供您检查修改了哪个文件,并附上所有详细信息。
此对话框将显示工作树中以任何方式更改的每个文件,以及您可能拥有的任何未版本控制的文件。
该对话框使用颜色编码突出显示状态。
本地修改的项目。
添加了项目。已添加历史记录的项目在“文本状态”列中显示+号,工具提示显示项目的复制位置。
已删除或缺失的项目。
在本地和存储库中修改的项目。更新将在更新时合并。这些可能会在更新时产生冲突。
在本地修改并在存储库中删除,或在存储库中修改并在本地删除的项目。这些将在更新时产生冲突。
未更改和未版本化的项目。
从对话框的上下文菜单中,您可以显示更改的差异。使用上下文菜单→与基础比较检查您所做的本地更改。使用上下文菜单→显示差异作为统一差异检查其他人创建的存储库中的更改。
您还可以还原单个文件中的更改。如果您意外删除了某个文件,它将显示为Missing,您可以使用Revert恢复它。
可以使用上下文菜单→删除从此处将未版本化和忽略的文件发送到回收站。如果要永久删除文件(绕过回收站),请在按住Shift键的同时按住Shift键。
如果要详细检查文件,可以将其从此处拖到另一个应用程序(如文本编辑器或IDE)中。
列可自定义。如果右键单击任何列标题,您将看到一个上下文菜单,允许您选择显示哪些列。您还可以使用在列边界上移动鼠标时显示的拖动控制柄来更改列宽。这些自定义设置将被保留,因此下次您将看到相同的标题。
在对话框的底部,您可以看到工作树中正在使用的存储库修订范围的摘要。这些是提交修订,而不是更新修订;它们代表上次提交这些文件的修订范围,而不是它们已更新的修订版本。请注意,显示的修订范围仅适用于显示的项目,而不适用于整个工作树。如果要查看整个工作树的信息,则必须选中“显示未修改的文件”复选框。