git作者重命名不工作

时间:2012-02-22 07:11:01

标签: git github

我有一个git存储库,到目前为止,我是唯一的提交者,并且已经在github上发布了。我发现从一台不同的计算机完成的一些提交有错误的作者信息。我的想法是从github中删除存储库,重写历史记录并将其重新发布为新的。 为此,我创建了一个简单的脚本:

git filter-branch --commit-filter '
            GIT_COMMITTER_NAME="Author Name";
            GIT_AUTHOR_NAME="Author Name";
            GIT_COMMITTER_EMAIL="email";
            GIT_AUTHOR_EMAIL="email";
            git commit-tree "$@";

    ' HEAD

应该重命名所有提交。问题是git回复

Cannot rewrite branch(es) with a dirty working directory.

但git状态为我提供了

# On branch master
nothing to commit (working directory clean)

关于我错过了什么的任何想法?任何有关如何重命名所有提交而不丢失历史记录的建议将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试通过运行git clean -dxf删除工作目录中未跟踪的文件。

此外,您还需要在提交过滤器中导出这些变量。如果你不这样做,Git将不会看到它们,因此它们不会改变Git的默认行为。