查看 git 没有合并提交的日志
View git log without merge commits
我正在尝试查看特定用户所做的提交,并希望从输出中删除该用户所做的任何合并。我该怎么做?
我可以使用 git log --author=<name>
检查用户的提交,但无法删除输出中的合并提交。
PS:合并冲突不会发生在有问题的 repo 的工作流程中,所有分支在合并到 master 之前都会重新设置基础,因此可以安全地从输出中删除合并提交,类似地,两个功能分支不会相互合并,从而提高了可能性。
您可以省略与 --no-merges
的合并:
git log --no-merges --author=<name>
详情见git log manpage。
使用
git log --author=<name> --no-merges
此外,--first-parent
选项可能会为您提供有用的结果:
--first-parent
Follow only the first parent commit upon seeing a merge commit. This option can give a better overview when viewing the
evolution of a particular topic branch, because merges
into a topic branch tend to be only about adjusting to updated upstream from time to time, and this option allows you to
ignore the individual commits brought in to your
history by such a merge. Cannot be combined with --bisect.
OP的问题已经回答了。我阐述了潜伏者的答案。这个冗长的日志调用将为您提供一个由提交者无合并过滤的漂亮视图。如果你愿意,可以使用 git 别名来驯服它。
我希望它对某些人有益,并且不要因为反对票而受到过于严厉的对待。
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>"
示例:
我正在尝试查看特定用户所做的提交,并希望从输出中删除该用户所做的任何合并。我该怎么做?
我可以使用 git log --author=<name>
检查用户的提交,但无法删除输出中的合并提交。
PS:合并冲突不会发生在有问题的 repo 的工作流程中,所有分支在合并到 master 之前都会重新设置基础,因此可以安全地从输出中删除合并提交,类似地,两个功能分支不会相互合并,从而提高了可能性。
您可以省略与 --no-merges
的合并:
git log --no-merges --author=<name>
详情见git log manpage。
使用
git log --author=<name> --no-merges
此外,--first-parent
选项可能会为您提供有用的结果:
--first-parent Follow only the first parent commit upon seeing a merge commit. This option can give a better overview when viewing the evolution of a particular topic branch, because merges into a topic branch tend to be only about adjusting to updated upstream from time to time, and this option allows you to ignore the individual commits brought in to your history by such a merge. Cannot be combined with --bisect.
OP的问题已经回答了。我阐述了潜伏者的答案。这个冗长的日志调用将为您提供一个由提交者无合并过滤的漂亮视图。如果你愿意,可以使用 git 别名来驯服它。
我希望它对某些人有益,并且不要因为反对票而受到过于严厉的对待。
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>"
示例: