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 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188
|
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='content-type' content='text/html;charset=utf8'>
<meta name='generator' content='Ronn-NG/v0.9.1 (http://github.com/apjanke/ronn-ng/tree/0.9.1)'>
<title>git-reauthor(1) - Rewrite history to change author's identity</title>
<style type='text/css' media='all'>
/* style: man */
body#manpage {margin:0}
.mp {max-width:100ex;padding:0 9ex 1ex 4ex}
.mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
.mp h2 {margin:10px 0 0 0}
.mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
.mp h3 {margin:0 0 0 4ex}
.mp dt {margin:0;clear:left}
.mp dt.flush {float:left;width:8ex}
.mp dd {margin:0 0 0 9ex}
.mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
.mp pre {margin-bottom:20px}
.mp pre+h2,.mp pre+h3 {margin-top:22px}
.mp h2+pre,.mp h3+pre {margin-top:5px}
.mp img {display:block;margin:auto}
.mp h1.man-title {display:none}
.mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
.mp h2 {font-size:16px;line-height:1.25}
.mp h1 {font-size:20px;line-height:2}
.mp {text-align:justify;background:#fff}
.mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
.mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
.mp u {text-decoration:underline}
.mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
.mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
.mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
.mp b.man-ref {font-weight:normal;color:#434241}
.mp pre {padding:0 4ex}
.mp pre code {font-weight:normal;color:#434241}
.mp h2+pre,h3+pre {padding-left:0}
ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
ol.man-decor {width:100%}
ol.man-decor li.tl {text-align:left}
ol.man-decor li.tc {text-align:center;letter-spacing:4px}
ol.man-decor li.tr {text-align:right;float:right}
</style>
</head>
<!--
The following styles are deprecated and will be removed at some point:
div#man, div#man ol.man, div#man ol.head, div#man ol.man.
The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
.man-navigation should be used instead.
-->
<body id='manpage'>
<div class='mp' id='man'>
<div class='man-navigation' style='display:none'>
<a href="#NAME">NAME</a>
<a href="#SYNOPSIS">SYNOPSIS</a>
<a href="#DESCRIPTION">DESCRIPTION</a>
<a href="#OPTIONS">OPTIONS</a>
<a href="#EXAMPLES">EXAMPLES</a>
<a href="#AUTHOR">AUTHOR</a>
<a href="#REPORTING-BUGS">REPORTING BUGS</a>
<a href="#SEE-ALSO">SEE ALSO</a>
</div>
<ol class='man-decor man-head man head'>
<li class='tl'>git-reauthor(1)</li>
<li class='tc'>Git Extras</li>
<li class='tr'>git-reauthor(1)</li>
</ol>
<h2 id="NAME">NAME</h2>
<p class="man-name">
<code>git-reauthor</code> - <span class="man-whatis">Rewrite history to change author's identity</span>
</p>
<h2 id="SYNOPSIS">SYNOPSIS</h2>
<p><code>git reauthor [<options>]</code></p>
<h2 id="DESCRIPTION">DESCRIPTION</h2>
<p>Lets you replace the author and/or committer identities in commits and tags.</p>
<p>The command goes through all existing commits and tags in all local branches to selectively modify the identities present in those objects. All the other information such as dates, messages,.. are preserved.</p>
<p>You can rewrite all the identities in the commits and tags objects by using the --all flag, or only replace the identities whose email matches the value of the --old-email option. It is also possible to limit the rewrite to a certain type of identity: the author or the committer identity. By default, both of them are affected.<br>
For each of those identities to update, the command will replace the name and/or email with the new correct values as defined via the options. If the new identity name to set is not defined, the current one will be kept (and vice-versa with the email).</p>
<p><code>WARNING!</code> This command rewrites history and as a result you will not able to push your branch to the remote without using the --force option.<br>
See more information with <code>git help filter-branch</code>.</p>
<h2 id="OPTIONS">OPTIONS</h2>
<p>-a, --all</p>
<pre><code>Rewrite ALL identities in commits and tags.
</code></pre>
<p>-c, --use-config</p>
<pre><code>Define correct values from user Git config
Values of --correct-email and --correct-name options take precedence over the ones from the config if specified as well
</code></pre>
<p>-e, --correct-email <<var>email</var>></p>
<pre><code>Define the correct email to set
Empty email '' is allowed
</code></pre>
<p>-n, --correct-name <<var>name</var>></p>
<pre><code>Define the correct name to set
Empty name '' is not allowed
</code></pre>
<p>-o, --old-email <<var>email</var>></p>
<pre><code>Rewrite identities matching old email in commits and tags
Empty email '' is allowed
</code></pre>
<p>-t, --type <<var>id</var>></p>
<pre><code>Define the type of identities affected by the rewrite
Possible type identifiers are: author, committer, both (default)
</code></pre>
<h2 id="EXAMPLES">EXAMPLES</h2>
<p>Replace the personal email and name of Jack to his work ones</p>
<pre><code>$ git reauthor --old-email jack@perso.me --correct-email jack@work.com --correct-name 'Jack Foobar'
</code></pre>
<p>Replace the email and name of Jack to the ones defined in the Git config</p>
<pre><code>$ git reauthor --old-email jack@perso.me --use-config
</code></pre>
<p>Replace only the email of Jack (keep the name already used)</p>
<pre><code>$ git reauthor --old-email jack@perso --correct-email jack@perso.me
</code></pre>
<p>Change only the committer email of Jack (keep the author email already used)</p>
<pre><code>$ git reauthor --old-email jack@perso.me --correct-email jack@work.com --type committer
</code></pre>
<p>Change only the name and keep email to merge one user with multiple pseudonyms.</p>
<pre><code>$ git reauthor --old-email jack@perso.me --correct-name Jack
</code></pre>
<p>Set Jack's identity as the only one of the whole repository</p>
<pre><code>$ git reauthor --all --correct-email jack@perso.me --correct-name Jack
</code></pre>
<p>Set Jack as the only committer of the whole repository (keeps authors)</p>
<pre><code>$ git reauthor --all --correct-email jack@perso.me --correct-name Jack --type committer
</code></pre>
<h2 id="AUTHOR">AUTHOR</h2>
<p>Written by Damien Tardy-Panis <<a href="mailto:damien@tardypad.me" data-bare-link="true">damien@tardypad.me</a>></p>
<h2 id="REPORTING-BUGS">REPORTING BUGS</h2>
<p><<a href="https://github.com/tj/git-extras/issues" data-bare-link="true">https://github.com/tj/git-extras/issues</a>></p>
<h2 id="SEE-ALSO">SEE ALSO</h2>
<p><<a href="https://github.com/tj/git-extras" data-bare-link="true">https://github.com/tj/git-extras</a>></p>
<ol class='man-decor man-foot man foot'>
<li class='tl'></li>
<li class='tc'>September 2019</li>
<li class='tr'>git-reauthor(1)</li>
</ol>
</div>
</body>
</html>
|