gdiff

简介

显示每个指定文件的当前版本与签出时的文件之间的差异。

vb diff|gdiff [OPTIONS] [PATH...]

示例

  • 在命令行显示与传入版本相比现在工作项目更改了哪些文件:

$ vb diff -r 9d6bb511ad
ADDED    test.txt
ADDED    test11.txt

说明

显示磁盘上指定文件的当前版本与签出时的文件之间的差异,该命令可以快速查看对该文件更改的详细信息。

如果省略了 PATH 参数,则显示当前工作签出中的所有未保存的更改。

默认输出格式是 unified patch (与大多数 unix 系统上 diff -u 的输出相同)。有多种替代格式可供选择。以下是一些更有用的替代格式:

--tk

弹出基于 Tcl/Tk 的 GUI 图形用户界面来显示差异

--by

在默认 Web 浏览器中并排显示差异

-b

在默认 Web 浏览器中显示线性差异

-y

并排显示文本差异

--webpage

将输出格式化为 HTML

--webpage -y

输出并排格式的 HTML

选项

--binary PATTERN

将与 glob PATTERN 匹配的文件视为二进制文件

--branch BRANCH

显示分支 BRANCH 上所有更改的差异

--brief

仅显示文件名

-b|--browser

在 Web 浏览器中显示差异输出

--by

--browser -y 的简写

-ci|--checkin VERSION

显示指定版本 VERSION 中所有更改的差异

--command PROG

外部 diff 程序。覆盖 diff-command

-c|--context N

显示每个更改周围的 N 行上下文,负 N 表示显示所有内容

--dark

对基于 Tcl/Tk 的 GUI 和 HTML 使用暗模式

--diff-binary BOOL

使用外部命令包含二进制文件

--exec-abs-paths

强制在外部命令上使用绝对路径名

--exec-rel-paths

强制在外部命令上使用相对路径名

-r|--from VERSION

选择指定版本 VERSION 作为 diff 的来源

-w|--ignore-all-space

比较行时忽略空格

-i|--internal

使用内部差异逻辑

--invert

倒置 diff

--json

输出格式为 JSON

-n|--linenum

显示行号

-N|--new-file

--verbose 的别名

--numstat

仅显示添加和删除的行数

-y|--side-by-side

并排显示差异

--strip-trailing-cr

删除尾随的 CR

--tcl

--tk 内部使用的 Tcl 格式的输出

--tclsh PATH

--tk 使用的 Tcl/Tk shell(默认: tclsh

--tk

弹出基于 Tcl/Tk 的 GUI 图形用户界面来显示差异

--to VERSION

选择指定版本 VERSION 作为 diff 的目标

--undo

显示与 undo 缓冲区的差异

--unified

统一差异

-v|--verbose

输出添加或删除的文件的完整详细文本

-h|--versions

在差异标题中显示比较的版本

--webpage

将输出格式化为独立的 HTML 网页

-W|--width N

并排差异中的线宽设置

-Z|--ignore-trailing-space

忽略行尾空格的变化

-i 命令行选项强制使用 VisionByte 自己的内部工具显示差异逻辑,而不是使用 setting 命令配置的任何外部差异程序。 如果没有配置外部差异的程序,则 -i 选项无效。 -i 选项还可以将 :gdiff 命令转换为 diff 命令。

--from VERSION 选项用于指定 diff 命令执行的签入文件版本。如果未指定,则签入文件为当前签出的最新签入文件。

--to VERSION 选项用于从指定的签入文件中获取文件的第二个版本。若省略 --to 选项,则使用当前签出中的(可能已编辑的)文件。

--checkin VERSION 选项显示签入版本 VERSION 相对于其主要父级所做的更改。

--branch BRANCHNAME 显示分支 BRANCHNAME 上的所有更改。

--diff-binary 选项在使用外部差异程序时启用或禁用二进制文件。

当考虑是否应该与外部差异程序一起使用时,--binary 选项会导致匹配 glob PATTERN 的文件 被视为二进制文件。该选项覆盖 binary-glob 全局设置。

这些命令显示托管文件之间的差异。使用 vb xdiff 命令查看非托管文件中的差异。