1GIT-CONTACTS(1) Git Manual GIT-CONTACTS(1)
2
3
4
6 git-contacts - List people who might be interested in a set of changes
7
9 git contacts (<patch>|<range>|<rev>)...
10
12 Given a set of changes, specified as patch files or revisions,
13 determine people who might be interested in those changes. This is done
14 by consulting the history of each patch or revision hunk to find people
15 mentioned by commits which touched the lines of files under
16 consideration.
17
18 Input consists of one or more patch files or revision arguments. A
19 revision argument can be a range or a single <rev> which is interpreted
20 as <rev>..HEAD, thus the same revision arguments are accepted as for
21 git-format-patch(1). Patch files and revision arguments can be combined
22 in the same invocation.
23
24 This command can be useful for determining the list of people with whom
25 to discuss proposed changes, or for finding the list of recipients to
26 Cc: when submitting a patch series via git send-email. For the latter
27 case, git contacts can be used as the argument to git send-email's
28 --cc-cmd option.
29
31 git blame is invoked for each hunk in a patch file or revision. For
32 each commit mentioned by git blame, the commit message is consulted for
33 people who authored, reviewed, signed, acknowledged, or were Cc:'d.
34 Once the list of participants is known, each person’s relevance is
35 computed by considering how many commits mentioned that person compared
36 with the total number of commits under consideration. The final output
37 consists only of participants who exceed a minimum threshold of
38 participation.
39
41 For each person of interest, a single line is output, terminated by a
42 newline. If the person’s name is known, “Name <user@host>” is printed;
43 otherwise only “<user@host>” is printed.
44
46 • Consult patch files:
47
48 $ git contacts feature/*.patch
49
50 • Revision range:
51
52 $ git contacts R1..R2
53
54 • From a single revision to HEAD:
55
56 $ git contacts origin
57
58 • Helper for git send-email:
59
60 $ git send-email --cc-cmd='git contacts' feature/*.patch
61
63 Several conditions controlling a person’s significance are currently
64 hard-coded, such as minimum participation level (10%), blame
65 date-limiting (5 years), and -C level for detecting moved and copied
66 lines (a single -C). In the future, these conditions may become
67 configurable.
68
70 Part of the git(1) suite
71
72
73
74Git 2.33.1 2021-10-12 GIT-CONTACTS(1)