繁体   English   中英

看到分支之间的提交(git cherry)和描述?

[英]See commits between branches (git cherry) with descriptions?

git cherry命令非常适合查看两个分支之间发生了什么提交 但是,默认情况下,它仅为您提供提交ID列表-信息不多。

$ git cherry master dev # Commits in "dev" since it forked from "master"
+ 54408ddc6403376c638d5bfc94c033ab655da7b3
+ 68bc4277954b7de4c95881904de22f1d443366ae
+ d74ab86eee75a8e5c1a835a6e69e74c01d4186e8

如何获得更多信息的相同列表?

您可以通过以下两个命令来传递git cherry输出来实现此目的:

首先使用sed删除每行开头的+ ,以保留原始提交ID:

$ git cherry master dev | sed 's/^+ //'
54408ddc6403376c638d5bfc94c033ab655da7b3
68bc4277954b7de4c95881904de22f1d443366ae
d74ab86eee75a8e5c1a835a6e69e74c01d4186e8

现在使用xargs --max-lines=1将每个提交ID传递给git log -1 ,然后git log -1可以显示有关每个提交的其他信息:

$ git cherry master dev | sed 's/^+ //' | xargs --max-lines=1 git log -1 --pretty=format:"%h [%ad] %an : %s" --date=short
54408dd [2013-10-09] Robin Winslow : Update Binaries submodule
68bc427 [2013-10-09] Robin Winslow : Update reference dependencies for Website
d74ab86 [2013-10-09] Robin Winslow : Remove non-exisent files from Website project

注意:您可以定制--pretty=format:"%h [%ad] %an : %s" --date=short部分,以从git log获得所需的任何输出

您可以使用git cherry -v master dev

它将显示带有提交哈希的提交消息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM