summaryrefslogtreecommitdiff
path: root/_posts/2010-03-02-changing-author-info.markdown
blob: 099aaf3861ec948ca7ae64e6bc3ffd49ccb5f19c (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
---
layout: default
title: Changing author info
description: How to modify author info in your repo's history
categories: git_ninjutsu
---

If you need to modify the author info in your repo's history, you can do so with this script.

__Big bold warning__ This action is destructive to your repo's history.  It's best to do this on a clone, just in case.  Also beware that this should not be performed on a repo that has been shared with others.  Use at your own risk.

<script src="http://gist.github.com/262686.js?file=history_rewrite.sh"> </script>
<noscript><pre>#!/bin/sh

git filter-branch --env-filter '

an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"

if [ "$GIT_COMMITTER_EMAIL" = "your@email.to.match" ]
then
    cn="Your New Committer Name"
    cm="Your New Committer Email"
fi
if [ "$GIT_AUTHOR_EMAIL" = "your@email.to.match" ]
then
    an="Your New Author Name"
    am="Your New Author Email"
fi

export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
'</pre></noscript>