| OLD | NEW | 
|    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" |    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" | 
|    2     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> |    2     "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | 
|    3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> |    3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> | 
|    4 <head> |    4 <head> | 
|    5 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /
     > |    5 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /
     > | 
|    6 <meta name="generator" content="AsciiDoc 8.6.9" /> |    6 <meta name="generator" content="AsciiDoc 8.6.9" /> | 
|    7 <title>git-footers(1)</title> |    7 <title>git-hyper-blame(1)</title> | 
|    8 <style type="text/css"> |    8 <style type="text/css"> | 
|    9 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ |    9 /* Shared CSS for AsciiDoc xhtml11 and html5 backends */ | 
|   10  |   10  | 
|   11 /* Default font. */ |   11 /* Default font. */ | 
|   12 body { |   12 body { | 
|   13   font-family: Georgia,serif; |   13   font-family: Georgia,serif; | 
|   14 } |   14 } | 
|   15  |   15  | 
|   16 /* Title font. */ |   16 /* Title font. */ | 
|   17 h1, h2, h3, h4, h5, h6, |   17 h1, h2, h3, h4, h5, h6, | 
| (...skipping 716 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  734 } |  734 } | 
|  735  |  735  | 
|  736 } |  736 } | 
|  737 asciidoc.install(); |  737 asciidoc.install(); | 
|  738 /*]]>*/ |  738 /*]]>*/ | 
|  739 </script> |  739 </script> | 
|  740 </head> |  740 </head> | 
|  741 <body class="manpage"> |  741 <body class="manpage"> | 
|  742 <div id="header"> |  742 <div id="header"> | 
|  743 <h1> |  743 <h1> | 
|  744 git-footers(1) Manual Page |  744 git-hyper-blame(1) Manual Page | 
|  745 </h1> |  745 </h1> | 
|  746 <h2>NAME</h2> |  746 <h2>NAME</h2> | 
|  747 <div class="sectionbody"> |  747 <div class="sectionbody"> | 
|  748 <p>git-footers - |  748 <p>git-hyper-blame - | 
|  749    Extract meta-information expressed as footers in a commit message. |  749    Like git blame, but with the ability to ignore or bypass certain commits. | 
|  750 </p> |  750 </p> | 
|  751 </div> |  751 </div> | 
|  752 </div> |  752 </div> | 
|  753 <div id="content"> |  753 <div id="content"> | 
|  754 <div class="sect1"> |  754 <div class="sect1"> | 
|  755 <h2 id="_synopsis">SYNOPSIS</h2> |  755 <h2 id="_synopsis">SYNOPSIS</h2> | 
|  756 <div class="sectionbody"> |  756 <div class="sectionbody"> | 
|  757 <div class="verseblock"> |  757 <div class="verseblock"> | 
|  758 <pre class="content"><em>git footers</em> [--key FOOTER] REF |  758 <pre class="content"><em>git hyper-blame</em> [-i <rev> [-i <rev> &#
     8230;]] [<rev>] [--] <file></pre> | 
|  759 <em>git footers</em> [--position | --position-ref | --position-num] REF</pre> |  | 
|  760 <div class="attribution"> |  759 <div class="attribution"> | 
|  761 </div></div> |  760 </div></div> | 
|  762 </div> |  761 </div> | 
|  763 </div> |  762 </div> | 
|  764 <div class="sect1"> |  763 <div class="sect1"> | 
|  765 <h2 id="_description">DESCRIPTION</h2> |  764 <h2 id="_description">DESCRIPTION</h2> | 
|  766 <div class="sectionbody"> |  765 <div class="sectionbody"> | 
|  767 <div class="paragraph"><p><code>git footers</code> extracts information included
      in commit messages as "footers", |  766 <div class="paragraph"><p><code>git hyper-blame</code> is like <code>git blame</
     code> but it can ignore or "look through" a | 
|  768 which are roughly like HTTP headers except they are at the end.  For example, a |  767 given set of commits, to find the real culprit.</p></div> | 
|  769 commit might look like:</p></div> |  768 <div class="paragraph"><p>This is useful if you have a commit that makes sweepin
     g changes that are | 
|  770 <div class="literalblock"> |  769 unlikely to be what you are looking for in a blame, such as mass reformatting or | 
|  771 <div class="content"> |  770 renaming. By adding these commits to the hyper-blame ignore list, <code>git | 
|  772 <pre><code>This is a fancy commit message.</code></pre> |  771 hyper-blame</code> will look past these commits to find the previous commit that | 
|  773 </div></div> |  772 touched a given line.</p></div> | 
|  774 <div class="literalblock"> |  773 <div class="paragraph"><p>Follows the normal <code>blame</code> syntax: annotate
     s <code><file></code> with the revision that | 
|  775 <div class="content"> |  774 last modified each line. Optional <code><rev></code> specifies the revisio
     n of <code><file></code> to | 
|  776 <pre><code>Cr-Commit-Position: refs/heads/master@{#292272} |  775 start from.</p></div> | 
|  777 Tech-Debt-Introduced: 17 nanoMSOffices</code></pre> |  | 
|  778 </div></div> |  | 
|  779 <div class="paragraph"><p><code>git footers</code> knows how to extract this inf
     ormation.</p></div> |  | 
|  780 <div class="paragraph"><p>Footers are order-independent and can appear more than
      once. Thus they are |  | 
|  781 treated as a multimap.</p></div> |  | 
|  782 </div> |  776 </div> | 
|  783 </div> |  777 </div> | 
|  784 <div class="sect1"> |  778 <div class="sect1"> | 
|  785 <h2 id="_options">OPTIONS</h2> |  779 <h2 id="_options">OPTIONS</h2> | 
|  786 <div class="sectionbody"> |  780 <div class="sectionbody"> | 
|  787 <div class="paragraph"><p>If no options are given, all footers are printed, with
      their names |  | 
|  788 case-normalized.</p></div> |  | 
|  789 <div class="dlist"><dl> |  781 <div class="dlist"><dl> | 
|  790 <dt class="hdlist1"> |  782 <dt class="hdlist1"> | 
|  791 --key FOOTER |  783 -i <rev> | 
|  792 </dt> |  784 </dt> | 
|  793 <dd> |  785 <dd> | 
|  794 <p> |  786 <p> | 
|  795   Extract all the headers associated with the given key, and print one per |  787   A revision to ignore. Can be specified as many times as needed. | 
|  796   line. If there are no footers with this key, produces no output and exits |  | 
|  797   successfully. |  | 
|  798 </p> |  | 
|  799 </dd> |  | 
|  800 <dt class="hdlist1"> |  | 
|  801 --position |  | 
|  802 </dt> |  | 
|  803 <dd> |  | 
|  804 <p> |  | 
|  805   Extract the Chrome commit position from the footers.  This first attempts |  | 
|  806   to get the value of the <code>Cr-Commit-Position</code> footer.  If that doesn
     ’t exist |  | 
|  807   then it tries a heuristic based on <code>Git-Svn-Id</code>.  Output is in one 
     of the |  | 
|  808   following forms: |  | 
|  809 </p> |  | 
|  810 <div class="literalblock"> |  | 
|  811 <div class="content"> |  | 
|  812 <pre><code>refs/heads/master@{#292272} |  | 
|  813 refs/branch-heads/branchname</code></pre> |  | 
|  814 </div></div> |  | 
|  815 </dd> |  | 
|  816 <dt class="hdlist1"> |  | 
|  817 --position-num |  | 
|  818 </dt> |  | 
|  819 <dd> |  | 
|  820 <p> |  | 
|  821   Extracts and prints the Chrome commit position number only (292272 in the |  | 
|  822   example above).  Exits with an error if one cannot be found. |  | 
|  823 </p> |  | 
|  824 </dd> |  | 
|  825 <dt class="hdlist1"> |  | 
|  826 --position-ref |  | 
|  827 </dt> |  | 
|  828 <dd> |  | 
|  829 <p> |  | 
|  830   Extracts and prints the Chrome commit position ref name only |  | 
|  831   (<code>ref/heads/master</code> or <code>refs/branch-heads/branchname</code> in
      the example above). |  | 
|  832 </p> |  788 </p> | 
|  833 </dd> |  789 </dd> | 
|  834 </dl></div> |  790 </dl></div> | 
|  835 </div> |  791 </div> | 
|  836 </div> |  792 </div> | 
|  837 <div class="sect1"> |  793 <div class="sect1"> | 
|  838 <h2 id="_example">EXAMPLE</h2> |  794 <h2 id="_example">EXAMPLE</h2> | 
|  839 <div class="sectionbody"> |  795 <div class="sectionbody"> | 
|  840 <div class="paragraph"><p></p></div><div class="listingblock"><div class="conten
     t"><pre><code><span style="font-weight: bold; color: #ffffff">$ git footers HEAD
     </span> |  796 <div class="paragraph"><p>Let’s run <code>git blame</code> on a file:</p><
     /div> | 
|  841 Tech-Debt-Introduced: -4 microMSOffices |  797 <div class="paragraph"><p></p></div><div class="listingblock"><div class="conten
     t"><pre><code><span style="font-weight: bold; color: #ffffff">$ git blame ipsum.
     txt</span> | 
|  842 Tech-Debt-Introduced: 17 microMSOffices |  798 c6eb3bfa (lorem           2014-08-11 23:15:57 +0000 1) LOREM IPSUM DOLOR SIT AME
     T, CONSECTETUR | 
|  843 Cr-Commit-Position: refs/heads/master@{#292272} |  799 3ddda43c (auto-uppercaser 2014-07-05 02:05:18 +0000 2) ADIPISCING ELIT, SED DO E
     IUSMOD TEMPOR | 
|  844 <span style="font-weight: bold; color: #ffffff">$ git footers --key Tech-Debt-In
     troduced HEAD</span> |  800 3ddda43c (auto-uppercaser 2014-07-05 02:05:18 +0000 3) INCIDIDUNT UT LABORE ET D
     OLORE MAGNA | 
|  845 -4 microMSOffices |  801 3ddda43c (auto-uppercaser 2014-07-05 02:05:18 +0000 4) ALIQUA. UT ENIM AD MINIM 
     VENIAM, QUIS | 
|  846 17 microMSOffices |  802 c6eb3bfa (lorem           2014-08-11 23:15:57 +0000 5) NOSTRUD EXERCITATION ULLA
     MCO LABORIS | 
|  847 <span style="font-weight: bold; color: #ffffff">$ git footers --position HEAD</s
     pan> |  803 3ddda43c (auto-uppercaser 2014-07-05 02:05:18 +0000 6) NISI UT ALIQUIP EX EA COM
     MODO CONSEQUAT. | 
|  848 refs/heads/master@{#292272} |  | 
|  849 <span style="font-weight: bold; color: #ffffff">$ git footers --position-num HEA
     D</span> |  | 
|  850 292272 |  | 
|  851 <span style="font-weight: bold; color: #ffffff">$ git footers --position-ref HEA
     D</span> |  | 
|  852 refs/heads/master |  | 
|  853 </code></pre></div></div><p><div class="paragraph"></p></div> |  804 </code></pre></div></div><p><div class="paragraph"></p></div> | 
 |  805 <div class="paragraph"><p>Notice that almost the entire file has been blamed on 
     a formatting change? You | 
 |  806 aren’t interested in the uppercasing of the file. You want to know who | 
 |  807 wrote/modified those lines in the first place. Just tell <code>hyper-blame</code
     > to ignore | 
 |  808 that commit:</p></div> | 
 |  809 <div class="paragraph"><p></p></div><div class="listingblock"><div class="conten
     t"><pre><code><span style="font-weight: bold; color: #ffffff">$ git hyper-blame 
     -i 3ddda43c ipsum.txt</span> | 
 |  810 c6eb3bfa (lorem 2014-08-11 23:15:57 +0000  1) LOREM IPSUM DOLOR SIT AMET, CONSEC
     TETUR | 
 |  811 134200d1 (lorem 2014-04-10 08:54:46 +0000 2*) ADIPISCING ELIT, SED DO EIUSMOD TE
     MPOR | 
 |  812 a34a1d0d (ipsum 2014-04-11 11:25:04 +0000 3*) INCIDIDUNT UT LABORE ET DOLORE MAG
     NA | 
 |  813 134200d1 (lorem 2014-04-10 08:54:46 +0000 4*) ALIQUA. UT ENIM AD MINIM VENIAM, Q
     UIS | 
 |  814 c6eb3bfa (lorem 2014-08-11 23:15:57 +0000  5) NOSTRUD EXERCITATION ULLAMCO LABOR
     IS | 
 |  815 0f0d17bd (dolor 2014-06-02 11:31:48 +0000 6*) NISI UT ALIQUIP EX EA COMMODO CONS
     EQUAT. | 
 |  816 </code></pre></div></div><p><div class="paragraph"></p></div> | 
 |  817 <div class="paragraph"><p><code>hyper-blame</code> places a <code>*</code> next 
     to any line where it has skipped over an ignored | 
 |  818 commit, so you know that the line in question has been changed (by an ignored | 
 |  819 commit) since the given person wrote it.</p></div> | 
 |  820 </div> | 
 |  821 </div> | 
 |  822 <div class="sect1"> | 
 |  823 <h2 id="_bugs">BUGS</h2> | 
 |  824 <div class="sectionbody"> | 
 |  825 <div class="ulist"><ul> | 
 |  826 <li> | 
 |  827 <p> | 
 |  828 When a commit is ignored, hyper-blame currently just blames the same line in | 
 |  829   the previous version of the file. This can be wildly inaccurate if the ignored | 
 |  830   commit adds or removes lines, resulting in a completely wrong commit being | 
 |  831   blamed. | 
 |  832 </p> | 
 |  833 </li> | 
 |  834 <li> | 
 |  835 <p> | 
 |  836 There is currently no way to pass the ignore list as a file. | 
 |  837 </p> | 
 |  838 </li> | 
 |  839 <li> | 
 |  840 <p> | 
 |  841 It should be possible for a git repository to configure an automatic list of | 
 |  842   commits to ignore (like <code>.gitignore</code>), so that project owners can m
     aintain a | 
 |  843   list of "big change" commits that are ignored by hyper-blame by default. | 
 |  844 </p> | 
 |  845 </li> | 
 |  846 </ul></div> | 
|  854 </div> |  847 </div> | 
|  855 </div> |  848 </div> | 
|  856 <div class="sect1"> |  849 <div class="sect1"> | 
|  857 <h2 id="_see_also">SEE ALSO</h2> |  850 <h2 id="_see_also">SEE ALSO</h2> | 
|  858 <div class="sectionbody"> |  851 <div class="sectionbody"> | 
|  859 <div class="paragraph"><p><a href="git-number.html">git-number(1)</a></p></div> |  852 <div class="paragraph"><p><a href="git-blame.html">git-blame(1)</a></p></div> | 
|  860 </div> |  853 </div> | 
|  861 </div> |  854 </div> | 
|  862 <div class="sect1"> |  855 <div class="sect1"> | 
|  863 <h2 id="_chromium_depot_tools">CHROMIUM DEPOT_TOOLS</h2> |  856 <h2 id="_chromium_depot_tools">CHROMIUM DEPOT_TOOLS</h2> | 
|  864 <div class="sectionbody"> |  857 <div class="sectionbody"> | 
|  865 <div class="paragraph"><p>Part of the chromium <a href="depot_tools.html">depot_
     tools(7)</a> suite. These tools are meant to |  858 <div class="paragraph"><p>Part of the chromium <a href="depot_tools.html">depot_
     tools(7)</a> suite. These tools are meant to | 
|  866 assist with the development of chromium and related projects. Download the tools |  859 assist with the development of chromium and related projects. Download the tools | 
|  867 from <a href="https://chromium.googlesource.com/chromium/tools/depot_tools.git">
     here</a>.</p></div> |  860 from <a href="https://chromium.googlesource.com/chromium/tools/depot_tools.git">
     here</a>.</p></div> | 
|  868 </div> |  861 </div> | 
|  869 </div> |  862 </div> | 
|  870 </div> |  863 </div> | 
|  871 <div id="footnotes"><hr /></div> |  864 <div id="footnotes"><hr /></div> | 
|  872 <div id="footer"> |  865 <div id="footer"> | 
|  873 <div id="footer-text"> |  866 <div id="footer-text"> | 
|  874 Last updated 2014-09-09 14:13:46 PDT |  867 Last updated 2016-01-28 16:40:21 AEDT | 
|  875 </div> |  868 </div> | 
|  876 </div> |  869 </div> | 
|  877 </body> |  870 </body> | 
|  878 </html> |  871 </html> | 
| OLD | NEW |