gitk 和 git-gui

当你安装 Git 时,你也会得到它的可视化工具,gitk 和 git-gui。

gitk 是一个图形历史查看器。可以把它想象成一个强大的 GUI shell 而不是 git log 和 git grep。当你尝试查找过去发生的事情或可视化项目的历史记录时,可以使用此工具。

Gitk 最容易从命令行调用。只需 cd 进入 Git 存储库,然后键入:

$ gitk [git log options]

Gitk 接受许多命令行选项,其中大部分都传递给底层的 git log 操作。可能最有用的一个是 --all 标志,它告诉 gitk 显示来自任何 ref 的提交,而不仅仅是 HEAD。Gitk 的界面如下所示:

StackOverflow 文档 图 1-1。gitk 历史查看器。

在顶部看起来有点像 git log –graph 的输出; 每个点代表一个提交,这些行代表父关系,refs 显示为彩色框。黄点代表 HEAD,红点代表尚未成为提交的更改。底部是所选提交的视图; 左侧的注释和补丁,以及右侧的摘要视图。中间是用于搜索历史的控件集合。

你可以通过右键单击分支名称或提交消息来访问许多与 git 相关的功能。例如,只需点击一下即可轻松查看不同的分支或樱桃选择提交。

另一方面,git-gui 主要是用于制作提交的工具。它也是最容易从命令行调用的:

$ git gui

它看起来像这样:

git-gui 提交工具。

StackOverflow 文档

图 1-2。git-gui 提交工具。

左边是索引; 未分阶段的更改位于顶部,在底部进行了阶段性更改。你可以通过单击其图标在两种状态之间移动整个文件,也可以通过单击其名称来选择要查看的文件。

右上角是 diff 视图,显示当前所选文件的更改。你可以通过右键单击此区域来分阶段个人(或单个行)。

右下角是消息和操作区域。在文本框中键入你的消息,然后单击提交以执行类似于 git commit 的操作。你还可以通过选择 Amend 单选按钮来选择修改最后一次提交,该按钮将使用上次提交的内容更新 Staged Changes 区域。然后,你可以简单地暂存或取消暂停某些更改,更改提交消息,然后再次单击提交以使用新提交替换旧提交。

gitk 和 git-gui 是面向任务的工具的例子。它们中的每一个都是为特定目的而定制的(分别查看历史记录和创建提交),并省略了该任务不必要的功能。

资料来源: https //git-scm.com/book/en/v2/Git-in-Other-Environments-Graphical-Interfaces