我想将回购中的所有提交日志导出到文本文件,有什么办法吗?
Answers:
git log | clip
复制到剪贴板,然后粘贴到文本文件
您可以使用>符号将输出发送到文件。例如:
git log > commits.txt
您可以通过以下方式使日志报告更加清晰
(1)设置最新提交次数(例如,在下面的命令中,我们获得最新提交50次,您可以将其更改为100、500等)
(2)在一行中显示长提交该命令是当前分支中的显示提交日志:
git log --oneline -50 > log50_latest_commits.txt
(3)如果要在所有分支上显示提交
git log --all --oneline -50 > log50_latest_commits.txt
生成的文本文件将位于当前目录。
参考:https : //git-scm.com/docs/git-log
(经过测试,git version 2.11.0.windows.1并且可以在许多其他版本的Git上运行)
git log --before="2019-2-23" --pretty=format:'"%h","%an","%ae","%aD","%s",' --shortstat --no-merges | paste - - - > log.txt
自问这个问题以来已经很久了,到那时,事情已经发展了。
但是,非常有趣的是,这里的所有答案都是正确的,但并未真正解决后命令错误常见。让我们尝试了解。。。。
谁知道这很容易。运行一个简单的命令
git log -p --all > git_log.txt
但是后来我误会了
> warning: inexact rename detection was skipped due to too many files.
> warning: you may want to set your diff.renameLimit variable to at least 2951 and retry the command.
而我们有一个问题。输出文件是半个演出。
我们只是想2018年上半年,我们能够与做--after和--until
git log --pretty=format:"%ad - %an: %s" --after="2018-01-01" --until="2018-06-30" > git_log.txt
这对于我们的目的而言非常有效,并且很高兴知道我们可以根据需要更改格式。
就我而言,这很有帮助
git log --after="2020-3-20" --pretty=format:'Author : %an %nDate/Time : %aD%nCommit : %s' | paste > log.txt
这将产生:
作者:你的名字
日期/时间:提交日期时间
提交:提交消息
这很简单。如果您没关系保存文件,则需要打开终端
cd {your git repository}
git log > your_file_name.txt
如果您需要特殊的目录,只需将所有路径写在右侧,像这样
cd {your git repository}
git log > /home/user/logs/your_file_name.txt
例如,此目录可以使用您的任何一种需求。我刚才写了这样的日志。