git - 如何使用 git 删除某人对项目的所有贡献?

标签 git

我是一个非常古老的项目的贡献者,该项目目前正在重新授权过程中。该项目只有大约 30 名贡献者,但此时已经有将近 10 年的历史了;这些人中有许多人已经离开了,我不确定我能找到他们所有人。

该项目目前正在使用git 进行版本控制,并且git 具有之前来自CVS 的完整历史。

如果我无法联系到某人,我们必须删除他们的所有作品,以及从该作品衍生的所有内容。有没有办法让 git 删除一个人的所有提交,以及任何触及该人插入的行的提交?

最佳答案

查看 http://git-scm.com/docs/git-filter-branch 处的 git-filter-branch以及“从历史记录中删除由“Darl McBribe”创作的提交:”部分。我不知道这将如何用于生成的代码库,除非所有这些过滤的提交都与生成的代码库中的所有其他功能正交,这样每一个都可以被删除,而不会依赖于后来的(未过滤的)提交休息。

关于git - 如何使用 git 删除某人对项目的所有贡献?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31925141/

相关文章:

git - 使用 Puppet 为 puppet-vcsrepo 管理 key

git - CocoaPods 无法从 GitHub 安装,出现 "No such file or directory"错误

git - Bitbucket git 凭据(如果已与 Google 签约)

xml - 哪些功能使文件格式对 VCS 友好?

git - 可以告诉 git 在 ~/.gitconfig 中使用空格吗?

git - 在 git 树中输出每个文件状态

git describe 失败并显示 "fatal: No names found, cannot describe anything."

java - 如何在裸存储库中使用 JGit 暂存文件?

git - 如何在 TortoiseGit 中撤消 "Resolve"?

git cherry-pick 多次提交