我需要重写git历史记录的原因是因为我的名字是重复的,它算作遥控器中的两个开发人员。
我的团队最近还添加了一个拒绝未知作者姓名的预接收挂钩。
我必须立即解决问题,所以我已经按照https://help.github.com/articles/changing-author-info/和其他几个指南尝试从提交中重写作者姓名。
这是我现在正在使用的那个:
#!/bin/sh
git filter-branch --env-filter '
OLD_EMAIL="tomas.p@mail.com"
CORRECT_NAME="Tomas Prado"
CORRECT_EMAIL="tomas.p@mail.com"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
问题
这是必须更改的提交
commit 355ee6adb0540d3e2eed7163dfe36087f85feb78
Author: tomasp <tomas.p@mail.com>
Date: Wed Apr 6 13:35:25 2016 +0200
Fix hashed
你知道,我的名字应该是#34; Tomas Prado&#34;但它是&#34; tomasp&#34;。
执行github脚本后,它保持不变。 我不知道该怎么做。
答案 0 :(得分:0)
为什么不使用git filter-branch --commit-filter '
if [ "$GIT_AUTHOR_EMAIL" = "tomas.p@mail.com" ];
then
GIT_AUTHOR_NAME="Tomas Prado";
GIT_AUTHOR_EMAIL="tomas.p@mail.com";
if [ "$GIT_COMMITTER_EMAIL" = "tomas.p@mail.com" ];
then
GIT_COMMITTER_NAME="Tomas Prado";
GIT_COMMITTER_EMAIL="tomas.p@mail.com";
git commit-tree "$@";
else
git commit-tree "$@";
fi
else
if [ "$GIT_COMMITTER_EMAIL" = "tomas.p@mail.com" ];
then
GIT_COMMITTER_NAME="Tomas Prado";
GIT_COMMITTER_EMAIL="tomas.p@mail.com";
git commit-tree "$@";
else
git commit-tree "$@";
fi
fi' HEAD
?
string query = "DECLARE @sqlQuery varchar(max); " +
" SELECT @sqlQuery = 'select distinct [' + @columnName + '] from [" + Globals.REPORTING_SCHEMA + "].[' + @tableName + ']'; " +
" exec(@sqlQuery);";