在git merge commit中列出所有修改过的文件-即使是快进文件

在git merge commit中列出所有修改过的文件-即使是快进文件,git,merge,git-branch,git-merge,Git,Merge,Git Branch,Git Merge,我在想,当我将一个分支合并到另一个分支时,所有更改的文件都会列在我的提交消息中,而不仅仅是在两个分支中修改的文件。 通过查看合并提交,我可以更好地了解分支中发生的更改。 有办法做到这一点吗?我不知道如何在提交消息中做到这一点。但是在合并之后,这将给出受合并提交影响的所有文件的名称: git log -m --name-only 仅用于提交的文件名列表: git log -m -1 --name-only --pretty="format:" <Merge SHA> git log

我在想,当我将一个分支合并到另一个分支时,所有更改的文件都会列在我的提交消息中,而不仅仅是在两个分支中修改的文件。 通过查看合并提交,我可以更好地了解分支中发生的更改。
有办法做到这一点吗?

我不知道如何在提交消息中做到这一点。但是在合并之后,这将给出受合并提交影响的所有文件的名称:

git log -m --name-only
仅用于提交的文件名列表:

git log -m -1 --name-only --pretty="format:" <Merge SHA>
git log-m-1--name only--pretty=“格式:” 由于合并有两个父级,因此存在一些空白,但可以轻松删除。

您也可以使用该命令查看任意两个提交之间的差异。如果分支尚未合并,则可以指定分支名称并对其进行比较,否则可能需要找到分支发散的位置()以及它们重新合并之前的最后一次提交

git diff --name-status <commit> <commit>
git diff——名称状态
-名称状态
仅显示已更改文件的名称和状态


假设您有合并提交的SHA,那么
git diff--name only ^1

我认为对于快进提交,您无法做到这一点。这也只是列出了所有提交(当然包括文件名),但我只想要一个文件列表谢谢!我今天在任何地方都找不到
-m
-1
文档(尽管它们仍然有效)。是否重命名了这些选项?文档中的-1为-,您可以将日志限制为任意数量的提交。我似乎也能找到
-m
的文档,但它显示为示例之一。-m用于以下内容,是一个差异格式选项:此标志使合并提交与常规提交一样显示完整的差异;对于每个合并父级,将生成一个单独的日志条目和差异。一个例外是,当给出--first parent选项时,只显示与第一个父对象的差异;在这种情况下,输出表示合并对当时的当前分支所做的更改。-m位于git help log的Diff Formatting部分。不幸的是,它没有很长的选项名。