基于作者压缩提交记录

5
在一个代码库中,由于自动化构建工具更新了AssemblyInfo文件(该项目使用C#),所以有大量的提交,这些提交的作者都是“Dev BuildAgent”。
有没有一种方法可以将特定作者在代码库中的所有提交压缩到另一个作者的第一个子提交中?
当然,一种可能的方法是使用根提交的SHA运行git rebase --interactive,然后手动浏览提交列表,并手动将压缩命令应用于适当的提交。但是,考虑到有大量的提交,知道是否有更快的选项会很有用。
1个回答

2
为了将所有作者电子邮件为foo@bar.com的提交压缩到另一个作者的下一个子提交中,您可以使用以下命令。当然,您也可以检查其他属性,例如作者名称、提交者电子邮件、提交者名称等等。
git filter-branch --commit-filter '[ "$GIT_AUTHOR_EMAIL" = "foo@bar.com" ] && skip_commit "$@" || git commit-tree "$@"'

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接