我有一个包含多个分支的 git 历史记录,其中一些分支未 merge 。我想提取从过去的一次提交到今天的每次提交的日志。
我查看了 Git Log,但没有找到一个可以提供所有内容的函数。我刚刚在分支上设置了一个标签来设置起点。
我希望历史记录有时间戳、提交消息和分支。
最佳答案
git log --all --since="1 year ago" --author-date-order --pretty=format:'%at %s' > year.log
可以作为您需要的基础,如果需要可以进行调整。
关于“分支”部分:简而言之,你不能。
更准确地说,分支只是跟踪存储库树中有用位置的指针,但它们最终是一次性的,而提交则不是,它们是历史树的真正问题。
当进行提交时,许多信息会进入其创建过程,但分支根本不是其中的一部分。与 git 相关的是问题“该提交可以从这个分支访问吗?”。
顺便说一句,您可以以分离的 HEAD 状态提交。如果这样做,该提交“属于”哪个分支?如果您继续提交,并且稍后在提交系列的顶部创建了一个分支,那么 git 如何追溯性地将分支信息写入现在位于该分支“上”的不可变提交中?
关于git - 如何列出今年 git 提交的时间戳和提交消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55427101/