mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-08 23:14:06 +08:00
1 line
8.5 KiB
HTML
1 line
8.5 KiB
HTML
<div class="c-markdown doc-markdown"><div class="doc-postil"><div class="c-markdown"><h2>名称</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>git-shortlog - 总结<code>git log</code>输出</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>概要</h2></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">git log --pretty=short | git shortlog [<options>]git shortlog [<options>] [<revision range>] [[\--] <path>…]</code></pre></div></div><div class="doc-postil"><div class="c-markdown"><h2>描述</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>以适合纳入发布公告的格式汇总<code>git log</code>输出。每个提交将按作者和标题进行分组。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>此外,“提交”将从提交说明中删除。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果在命令行上没有传递修订,并且标准输入不是终端或没有当前分支,<code>git shortlog</code>则会输出从标准输入中读取的日志的摘要,而不参考当前的存储库。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>选项</h2></div></div><div class="doc-postil"><div class="c-markdown"><p>-n --numbered</p></div></div><div class="doc-postil"><div class="c-markdown"><p>根据每个作者的提交数量而不是作者字母顺序对输出进行排序。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-s --summary</p></div></div><div class="doc-postil"><div class="c-markdown"><p>禁止提交描述并仅提供提交计数摘要。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-e --email</p></div></div><div class="doc-postil"><div class="c-markdown"><p>显示每位作者的电子邮件地址。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>--format=<format></p></div></div><div class="doc-postil"><div class="c-markdown"><p>使用一些其他信息来描述每个提交,而不是提交主题。<code><format></code>可以是由<code>--format</code>选项接受的任何字符串<code>git log</code>,例如<code>* [%h] %s</code>。(请参阅 git-log [1]的“PRETTY FORMATS”部分。)</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Each pretty-printed commit will be rewrapped before it is shown.</code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>-c --committer</p></div></div><div class="doc-postil"><div class="c-markdown"><p>收集并显示提交者身份而不是作者。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-w[<width>[,<indent1>,<indent2>]]</p></div></div><div class="doc-postil"><div class="c-markdown"><p>通过包装每行的输入线来包装输出<code>width</code>。每个条目的第一行由<code>indent1</code>空格缩进,第二行和后续行由<code>indent2</code>空格缩进。<code>width</code>,<code>indent1</code>和<code>indent2</code>分别默认为76,6和9。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果宽度为<code>0</code>(零),则缩进输出的行而不包装它们。</p></div></div><div class="doc-postil"><div class="c-markdown"><p><revision range></p></div></div><div class="doc-postil"><div class="c-markdown"><p>仅显示指定修订范围内的提交。当没有指定<revision range>时,它默认为<code>HEAD</code>(即导致当前提交的整个历史记录)。<code>origin..HEAD</code>指定从当前提交(ie <code>HEAD</code>)可访问的所有提交,但不提供<code>origin</code>。有关拼写<修订范围>的完整方法列表,请参阅 gitrevisions [7]的“指定范围”部分。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>-- <path>…</p></div></div><div class="doc-postil"><div class="c-markdown"><p>只考虑足以解释如何匹配指定路径的文件的提交。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>当出现混淆时,路径可能需要以“ - ”作为前缀以将它们与选项或修订范围分开。</p></div></div><div class="doc-postil"><div class="c-markdown"><h2>映射作者</h2></div></div><div class="doc-postil"><div class="c-markdown"><p><code>.mailmap</code>功能用于合并短日志中同一个人的提交,其姓名和/或电子邮件地址拼写有所不同。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>如果文件<code>.mailmap</code>存在于版本库的顶层,或者位于 mailmap.file 或 mailmap.blob 配置选项指向的位置,则它用于将作者和提交者名称以及电子邮件地址映射到规范的实名和电子邮件地址。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>在简单的形式中,文件中的每一行由作者的标准真实姓名,空格以及在提交中使用的电子邮件地址(用<code><</code>and 括起来<code>></code>)映射到名称。例如:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Proper Name <commit@email.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>更复杂的形式是:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash"><proper@email.xx> <commit@email.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>它允许 mailmap 只替换提交的电子邮件部分,并且:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Proper Name <proper@email.xx> <commit@email.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>它允许 mailmap 替换与指定的提交电子邮件地址匹配的提交的名称和电子邮件,以及:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Proper Name <proper@email.xx> Commit Name <commit@email.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>它允许 mailmap 替换与指定的提交名称和电子邮件地址相匹配的提交的名称和电子邮件。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>示例1:您的历史记录包含两位作者 Jane 和 Joe 的提交,他们的名字以几种形式出现在存储库中:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Joe Developer <joe@example.com>Joe R. Developer <joe@example.com>Jane Doe <jane@example.com>Jane Doe <jane@laptop.(none)>Jane D. <jane@desktop.(none)></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>现在假设乔想让他的中间名得到最初的使用,而珍则更喜欢将她的姓氏完整地拼出来。一个合适的<code>.mailmap</code>文件应该是这样的:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">Jane Doe <jane@desktop.(none)>Joe R. Developer <joe@example.com></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>注意如何不需要输入<code><jane@laptop.(none)></code>,因为该作者的真实姓名已经是正确的。</p></div></div><div class="doc-postil"><div class="c-markdown"><p>示例2:您的存储库包含以下作者的提交:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash">nick1 <bugs@company.xx>nick2 <bugs@company.xx>nick2 <nick2@company.xx>santa <me@company.xx>claus <me@company.xx>CTO <cto@coompany.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>那么你可能需要一个如下所示的<code>.mailmap</code>文件:</p></div></div><div class="doc-postil"><div class="c-markdown"><pre><code class="language-Bash"><cto@company.xx> <cto@coompany.xx>Some Dude <some@dude.xx> nick1 <bugs@company.xx>Other Author <other@author.xx> nick2 <bugs@company.xx>Other Author <other@author.xx> <nick2@company.xx>Santa Claus <santa.claus@northpole.xx> <me@company.xx></code></pre></div></div><div class="doc-postil"><div class="c-markdown"><p>将散列<code>#</code>用于自己的行中或电子邮件地址之后的注释。</p></div></div></div> |