繁体   English   中英

git日志漂亮格式

[英]git log pretty format

我有一个别名git log twoline。

[alias]
    l       = "log --graph --date=relative --decorate --abbrev-commit --pretty=format:'%h - %aD (%ar)%d%n  %s - %an'"

效果很好。

输出#1:

$ git l -2
* 714a14e - Fri, 18 Nov 2016 00:04:19 -0800 (3 months ago) (HEAD -> dev, github/dev)
|   Adding BitSet implementation. - hippy
* 87dce5f - Sat, 10 Dec 2016 12:50:40 -0800 (9 weeks ago)
|   Turning on recommended code analysis rules. - hippy

但是,使用--name-status ,我可以在作者姓名之后看到一个管道。

输出#2:

$ git l -2 --name-status
* 714a14e - Fri, 18 Nov 2016 00:04:19 -0800 (3 months ago) (HEAD -> dev, github/dev)
|   Adding BitSet implementation. - hippy|
| M README.md
| A rm.Extensions/BitSet.cs
| M rm.Extensions/Properties/AssemblyInfo.cs
| M rm.Extensions/rm.Extensions.csproj
| A rm.ExtensionsTest/BitSetTest.cs
| M rm.ExtensionsTest/rm.ExtensionsTest.csproj

* 87dce5f - Sat, 10 Dec 2016 12:50:40 -0800 (9 weeks ago)
|   Turning on recommended code analysis rules. - hippy|
| M rm.Extensions/GraphExtension.cs
| M rm.Extensions/Wrapped.cs
| M rm.Extensions/WrappedExtension.cs
| M rm.Extensions/rm.Extensions.csproj

如果我要在最后添加一个%n (所以...%an%n ),则输出#1变为3行而不是2行。

我希望--name-status最好看起来像这样,但是在文件列表之前可以使用额外的换行符:

$ git l -2 --name-status
* 714a14e - Fri, 18 Nov 2016 00:04:19 -0800 (3 months ago) (HEAD -> dev, github/dev)
|   Adding BitSet implementation. - hippy
| M README.md
| A rm.Extensions/BitSet.cs
| M rm.Extensions/Properties/AssemblyInfo.cs
| M rm.Extensions/rm.Extensions.csproj
| A rm.ExtensionsTest/BitSetTest.cs
| M rm.ExtensionsTest/rm.ExtensionsTest.csproj
|
* 87dce5f - Sat, 10 Dec 2016 12:50:40 -0800 (9 weeks ago)
|   Turning on recommended code analysis rules. - hippy
| M rm.Extensions/GraphExtension.cs
| M rm.Extensions/Wrapped.cs
| M rm.Extensions/WrappedExtension.cs
| M rm.Extensions/rm.Extensions.csproj

对我来说,这似乎是一个错误,因为我无法在漂亮格式的手册页中找到任何内容。

$ git version
git version 2.11.0.windows.1

如何解决此pretty format

注意:我在这里提交了一个错误( bug链接 ),并将相应地更新票证。

显然这是一个错误(竖线在错误的位置 ;请注意--name-status项目下方的空白)。 幸运的是,有一个简单的解决方法:使用tformat而不是plain format 区别在于tformat在需要时添加换行符,而不是不需要时添加换行符。

注意--format (从Git版本1.6.3起可用)本质上是--pretty=tformat:的同义词,因为大多数面向用户的代码通常应该使用tformat

暂无
暂无

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

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