当前位置:  开发笔记 > 开发工具 > 正文

github:你如何删除某个用户名的所有提交

如何解决《github:你如何删除某个用户名的所有提交》经验,为你挑选了1个好方法。

当我第一次开始使用这个仓库时,我之前没有使用过git,并且通过错误输入我的电子邮件或其他东西来缓解设置,所以所有提交一段时间都是由用户做出的"未知".我在这里找到了一个答案,将所有"未知"提交转换为我的名字,但它实际上做的是复制提交并应用我的名字.所以现在我把所有这些"未知"的用户提交分散了.

所以我想知道一些命令要运行以删除"未知"用户的所有提交.



1> manojlds..:

你将不得不使用git filter-branch(在你的仓库中)并强制推送到github.

手动示例处理几乎与您要删除特定用户的提交相同的情况:

git filter-branch --commit-filter '
    if [ "$GIT_AUTHOR_NAME" = "Darl McBribe" ];
    then
            skip_commit "$@";
    else
            git commit-tree "$@";
    fi' HEAD

请注意,这将重写您的历史记录,它可能会影响其他人也使用您对协作者的repo.Github建议:

与合作者打交道

您可能有合作者拉动您的污点分支并从中创建自己的分支.在他们获取新分支后,他们将需要在他们自己的分支上使用git rebase来在新分支之上重新绑定它们.协作还应确保其分支不重新引入文件,因为这将覆盖.gitignore文件.确保您的协作使用rebase而不是合并,否则他将重新引入文件和整个受污染的历史......并且可能会遇到一些合并冲突.

http://help.github.com/remove-sensitive-data/

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有