]>
Commit | Line | Data |
---|---|---|
1 | git-difftool(1) | |
2 | =============== | |
3 | ||
4 | NAME | |
5 | ---- | |
6 | git-difftool - Show changes using common diff tools | |
7 | ||
8 | SYNOPSIS | |
9 | -------- | |
10 | 'git difftool' [--tool=<tool>] [-y|--no-prompt|--prompt] [<'git diff' options>] | |
11 | ||
12 | DESCRIPTION | |
13 | ----------- | |
14 | 'git-difftool' is a git command that allows you to compare and edit files | |
15 | between revisions using common diff tools. 'git difftool' is a frontend | |
16 | to 'git-diff' and accepts the same options and arguments. | |
17 | ||
18 | OPTIONS | |
19 | ------- | |
20 | -y:: | |
21 | --no-prompt:: | |
22 | Do not prompt before launching a diff tool. | |
23 | ||
24 | --prompt:: | |
25 | Prompt before each invocation of the diff tool. | |
26 | This is the default behaviour; the option is provided to | |
27 | override any configuration settings. | |
28 | ||
29 | -t <tool>:: | |
30 | --tool=<tool>:: | |
31 | Use the diff tool specified by <tool>. | |
32 | Valid merge tools are: | |
33 | kdiff3, kompare, tkdiff, meld, xxdiff, emerge, vimdiff, gvimdiff, | |
34 | ecmerge, diffuse, opendiff and araxis. | |
35 | + | |
36 | If a diff tool is not specified, 'git-difftool' | |
37 | will use the configuration variable `diff.tool`. If the | |
38 | configuration variable `diff.tool` is not set, 'git-difftool' | |
39 | will pick a suitable default. | |
40 | + | |
41 | You can explicitly provide a full path to the tool by setting the | |
42 | configuration variable `difftool.<tool>.path`. For example, you | |
43 | can configure the absolute path to kdiff3 by setting | |
44 | `difftool.kdiff3.path`. Otherwise, 'git-difftool' assumes the | |
45 | tool is available in PATH. | |
46 | + | |
47 | Instead of running one of the known diff tools, | |
48 | 'git-difftool' can be customized to run an alternative program | |
49 | by specifying the command line to invoke in a configuration | |
50 | variable `difftool.<tool>.cmd`. | |
51 | + | |
52 | When 'git-difftool' is invoked with this tool (either through the | |
53 | `-t` or `--tool` option or the `diff.tool` configuration variable) | |
54 | the configured command line will be invoked with the following | |
55 | variables available: `$LOCAL` is set to the name of the temporary | |
56 | file containing the contents of the diff pre-image and `$REMOTE` | |
57 | is set to the name of the temporary file containing the contents | |
58 | of the diff post-image. `$BASE` is provided for compatibility | |
59 | with custom merge tool commands and has the same value as `$LOCAL`. | |
60 | ||
61 | See linkgit:git-diff[1] for the full list of supported options. | |
62 | ||
63 | CONFIG VARIABLES | |
64 | ---------------- | |
65 | 'git-difftool' falls back to 'git-mergetool' config variables when the | |
66 | difftool equivalents have not been defined. | |
67 | ||
68 | diff.tool:: | |
69 | The default diff tool to use. | |
70 | ||
71 | difftool.<tool>.path:: | |
72 | Override the path for the given tool. This is useful in case | |
73 | your tool is not in the PATH. | |
74 | ||
75 | difftool.<tool>.cmd:: | |
76 | Specify the command to invoke the specified diff tool. | |
77 | + | |
78 | See the `--tool=<tool>` option above for more details. | |
79 | ||
80 | difftool.prompt:: | |
81 | Prompt before each invocation of the diff tool. | |
82 | ||
83 | SEE ALSO | |
84 | -------- | |
85 | linkgit:git-diff[1]:: | |
86 | Show changes between commits, commit and working tree, etc | |
87 | ||
88 | linkgit:git-mergetool[1]:: | |
89 | Run merge conflict resolution tools to resolve merge conflicts | |
90 | ||
91 | linkgit:git-config[1]:: | |
92 | Get and set repository or global options | |
93 | ||
94 | ||
95 | AUTHOR | |
96 | ------ | |
97 | Written by David Aguilar <davvid@gmail.com>. | |
98 | ||
99 | Documentation | |
100 | -------------- | |
101 | Documentation by David Aguilar and the git-list <git@vger.kernel.org>. | |
102 | ||
103 | GIT | |
104 | --- | |
105 | Part of the linkgit:git[1] suite |