微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

“git log -m”总是显示两个差异

如何解决“git log -m”总是显示两个差异

我目前正在编写一个程序,需要读取一个 git 日志文件并从中重建完整的文件树。 要通过不同的分支跟踪支持文件跟踪和重命名,我需要查看合并时的文件创建和重命名。为此,我可以使用 git 已经提供的“-m”参数:https://git-scm.com/docs/git-log#Documentation/git-log.txt--m

-m 为合并的两个父项生成差异。这很好,正是我需要的。但现在问题来了。如果一个父项的差异为空,则仅打印一个差异。两个差异的格式完全相同。查看差异适用于哪个父级的唯一方法是检查它们打印的顺序。第一个是来自merge-source-parent 的,第二个来自merge-target-parent。问题是,如果两个差异之一为空,我无法找出打印的差异属于哪个父级。 我使用这个命令来生成日志: git log --pretty=format:'[%h] [%an] (%p) %ad %s' --date="format:%Y-%m-%d %H:%M:%s" -m --numstat --summary --parents 即使差异为空,有没有办法让 git 命令打印差异的标题?或者,如果只打印一个差异,是否还有其他方法可以找出差异属于哪个父级?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。