summaryrefslogtreecommitdiff
path: root/_posts
diff options
context:
space:
mode:
authortekkub <tekkub@gmail.com>2010-03-03 01:46:13 -0700
committertekkub <tekkub@gmail.com>2010-03-03 01:46:13 -0700
commit1884e6cf5a830abb2d269bd96c738d54aaf64de6 (patch)
treeea59b9200bc2cb54c65dcdbaf32d04a86a18a6d1 /_posts
parent8e5bc30f4d5f019bbad5fb7fe3521b63ed7b7f27 (diff)
Add changing author info in history guide
Diffstat (limited to '_posts')
-rw-r--r--_posts/2010-03-02-changing-author-info.markdown37
1 files changed, 37 insertions, 0 deletions
diff --git a/_posts/2010-03-02-changing-author-info.markdown b/_posts/2010-03-02-changing-author-info.markdown
new file mode 100644
index 0000000..47c19ba
--- /dev/null
+++ b/_posts/2010-03-02-changing-author-info.markdown
@@ -0,0 +1,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> \ No newline at end of file