1GIT-REAUTHOR(1) Git Extras GIT-REAUTHOR(1)
2
3
4
6 git-reauthor - Rewrite history to change author´s identity
7
9 git reauthor [<options>]
10
12 Lets you replace the author and/or committer identities in commits and
13 tags.
14
15 The command goes through all existing commits and tags in all local
16 branches to selectively modify the identities present in those objects.
17 All the other information such as dates, messages,.. are preserved.
18
19 You can rewrite all the identities in the commits and tags objects by
20 using the --all flag, or only replace the identities whose email
21 matches the value of the --old-email option. It is also possible to
22 limit the rewrite to a certain type of identity: the author or the com‐
23 mitter identity. By default, both of them are affected.
24 For each of those identities to update, the command will replace the
25 name and/or email with the new correct values as defined via the
26 options. If the new identity name to set is not defined, the current
27 one will be kept (and vice-versa with the email).
28
29 WARNING! This command rewrites history and as a result you will not
30 able to push your branch to the remote without using the --force
31 option.
32 See more information with git help filter-branch.
33
35 -a, --all
36
37
38
39 Rewrite ALL identities in commits and tags.
40
41
42
43 -c, --use-config
44
45
46
47 Define correct values from user Git config
48 Values of --correct-email and --correct-name options take precedence over the ones from the config if specified as well
49
50
51
52 -e, --correct-email <email>
53
54
55
56 Define the correct email to set
57 Empty email ´´ is allowed
58
59
60
61 -n, --correct-name <name>
62
63
64
65 Define the correct name to set
66 Empty name ´´ is not allowed
67
68
69
70 -o, --old-email <email>
71
72
73
74 Rewrite identities matching old email in commits and tags
75 Empty email ´´ is allowed
76
77
78
79 -t, --type <id>
80
81
82
83 Define the type of identities affected by the rewrite
84 Possible type identifiers are: author, committer, both (default)
85
86
87
89 Replace the personal email and name of Jack to his work ones
90
91
92
93 $ git reauthor --old-email jack@perso.me --correct-email jack@work.com --correct-name ´Jack Foobar´
94
95
96
97 Replace the email and name of Jack to the ones defined in the Git con‐
98 fig
99
100
101
102 $ git reauthor --old-email jack@perso.me --use-config
103
104
105
106 Replace only the email of Jack (keep the name already used)
107
108
109
110 $ git reauthor --old-email jack@perso --correct-email jack@perso.me
111
112
113
114 Change only the committer email of Jack (keep the author email already
115 used)
116
117
118
119 $ git reauthor --old-email jack@perso.me --correct-email jack@work.com --type committer
120
121
122
123 Set Jack´s identity as the only one of the whole repository
124
125
126
127 $ git reauthor --all --correct-email jack@perso.me --correct-name Jack
128
129
130
131 Set Jack as the only committer of the whole repository (keeps authors)
132
133
134
135 $ git reauthor --all --correct-email jack@perso.me --correct-name Jack --type committer
136
137
138
140 Written by Damien Tardy-Panis <damien@tardypad.me>
141
143 <http://github.com/tj/git-extras/issues>
144
146 <https://github.com/tj/git-extras>
147
148
149
150 October 2017 GIT-REAUTHOR(1)