我正在尝试查看特定用户提交的提交,并希望从输出中删除用户完成的任何合并.我怎么能这样做?
我可以检查用户的提交git log --author=<name>,但无法删除输出中的合并提交.
PS:合并冲突不会发生在有问题的repo的工作流中,所有分支在合并到master之前都会被重新定义,因此可以安全地从输出中删除合并提交,同样地,两个功能分支不会相互合并可能性.
0xA*_*xAX 91
使用
git log --author=<name> --no-merges
Run Code Online (Sandbox Code Playgroud)
此外,该--first-parent选项可能会为您提供有用的结果:
--first-parent在看到合并提交时仅跟随第一个父提交.在查看特定主题分支的演变时,此选项可以提供更好的概述,因为合并到主题分支往往只是关于不时调整到更新的上游,并且此选项允许您忽略引入的单个提交通过这样的合并你的历史.不能与--bisect结合使用.
Joe*_*ton 19
OP的问题已经得到解答。我为潜伏者阐述了答案。这个冗长的日志调用将为您提供一个由提交者过滤的漂亮视图,无需合并。如果您愿意,可以使用 git alias 来解决这个问题。
我希望它对某人有利,并且不会因否决票而受到过于严厉的对待。
git log --no-merges --max-count=15 --pretty="format:%C(dim green) %<(9,trunc)%ar %C(bold magenta)%h %C(bold green)%<(12,trunc)%an %C(bold
yellow)%<(113,trunc)%s" --committer="<name>"
Run Code Online (Sandbox Code Playgroud)
mor*_*rxa 16
您可以省略合并--no-merges:
git log --no-merges --author=<name>
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅git log联机帮助页.