summaryrefslogtreecommitdiff
path: root/Documentation/git-mergetool--lib.txt
blob: 3d57031d78d9e274890ab2264adcbc95980646d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
git-mergetool--lib(1)
=====================

NAME
----
git-mergetool--lib - Common git merge tool shell scriptlets

SYNOPSIS
--------
'. "$(git --exec-path)/git-mergetool--lib"'

DESCRIPTION
-----------

This is not a command the end user would want to run.  Ever.
This documentation is meant for people who are studying the
Porcelain-ish scripts and/or are writing new ones.

The 'git-mergetool--lib' scriptlet is designed to be sourced (using
`.`) by other shell scripts to set up functions for working
with git merge tools.

Before sourcing it, your script should set up a few variables;
`TOOL_MODE` is used to define the operation mode for various
functions.  'diff' and 'merge' are valid values.

FUNCTIONS
---------
get_merge_tool::
	returns a merge tool

get_merge_tool_cmd::
	returns the custom command for a merge tool.

get_merge_tool_path::
	returns the custom path for a merge tool.

run_merge_tool::
	launches a merge tool given the tool name and a true/false
	flag to indicate whether a merge base is present.
	'$merge_tool', '$merge_tool_path', and for custom commands,
	'$merge_tool_cmd', must be defined prior to calling
	run_merge_tool.  Additionally, '$MERGED', '$LOCAL', '$REMOTE',
	and '$BASE' must be defined for use by the merge tool.

Author
------
Written by David Aguilar <davvid@gmail.com>

Documentation
--------------
Documentation by David Aguilar and the git-list <git@vger.kernel.org>.

GIT
---
Part of the linkgit:git[1] suite