I have a file in a git repo. It has changed during the last two
commits. I want to see the changes made in these two commits. The
following command should work:
git diff HEAD^^
but that doesn't get me the expected results. Read on for details.
Last commit: I changed some stuff towards the end of the file, for
example, around line 3145. Here's the full diff (it's here for
reference, don't bother reading all of it):
$git diff HEAD^ HEAD ieicej.cls
diff --git a/ieicej.cls b/ieicej.cls
index ecf8beb..01debd9 100644
--- a/ieicej.cls
+++ b/ieicej.cls
@@ -2250,7 +2250,7 @@
%
%\renewcommand{\thesection}{\@arabic\c@section.}
\renewcommand{\thesection}{\@arabic\c@section}
-\renewcommand{\thesubsection}{\thesection\,\@arabic\c@subsection}
+\renewcommand{\thesubsection}{\thesection.\,\@arabic\c@subsection}
\renewcommand{\thesubsubsection}{%
\thesubsection.\,\@arabic\c@subsubsection}
\renewcommand{\theparagraph}{% (
@@ -2369,7 +2369,7 @@
\inhibitglue #1%
\else
\def\@makefnmark{\kern0pt\hbox to \z@{%
- $^{\mbox{\tiny \kern-.5zw (注\@thefnmark{})\kern-.5zw}}$\hss}}%
+ $^{\mbox{\tiny \kern-.5zw (\@thefnmark{})\kern-.5zw}}$\hss}}%
\kanjiskip\z@ \@plus 1fill \@minus 1fill\xkanjiskip=\kanjiskip
\jmathkanjiskip=\kanjiskip
\hbox to 5zw{\inhibitglue #1\hfil}%
@@ -3145,11 +3145,11 @@
\kern 2.715\p@}
\def\@makefnmark{\hbox{$^{\mbox{\tiny \kern-.5zw
- (注\kern.1zw\@thefnmark{})\kern-.5zw}}$}}
+ (\kern.1zw\@thefnmark{})\kern-.5zw}}$}}
\newcommand\@makefntext[1]{\parindent1zw
\noindent\hbox{\kern-.5zw
- (注\kern.1zw\@thefnmark{})\kern-.5zw\hbox to 1zw{\hss :\hss}}#1}
+ (\kern.1zw\@thefnmark{})\kern-.5zw\hbox to 1zw{\hss :\hss}}#1}
\def\thefootnote{\@arabic\c@footnote}
\def\thempfootnote{\@fnsymbol\c@mpfootnote}
Here's the second-last commit. I changed some things around line 1714.
Full commit diff (again, for reference only):
$git diff -p HEAD^^ HEAD^ ieicej.cls
diff --git a/ieicej.cls b/ieicej.cls
index 1c3b947..ecf8beb 100644
--- a/ieicej.cls
+++ b/ieicej.cls
@@ -1714,51 +1714,57 @@
\setbox\@tempboxa\vbox{%
\def\baselinestretch{\@titlepagebaselinestretch}%
\hskip8mm
- \vtop{\footnotesize\baselineskip3mm
- \hbox{社団法人\hskip1zw 電子情報通信学会}%
- \hbox{THE INSTITUTE OF ELECTRONICS,}%
- \hbox{INFORMATION AND COMMUNICATION ENGINEERS}%
- }\hfill
- \vtop{\footnotesize\baselineskip3mm
- \hbox{信学技報}%
- \hbox{TECHNICAL REPORT OF IEICE.}%
- \hbox{}%
- }\hskip8mm\hbox{}\par
+% \vtop{\footnotesize\baselineskip3mm
+% \hbox{社団法人\hskip1zw 電子情報通信学会}%
+% \hbox{THE INSTITUTE OF ELECTRONICS,}%
+% \hbox{INFORMATION AND COMMUNICATION ENGINEERS}%
+% }\hfill
+% \vtop{\footnotesize\baselineskip3mm
+% \hbox{信学技報}%
+% \hbox{TECHNICAL REPORT OF IEICE.}%
+% \hbox{}%
+% }\hskip8mm\hbox{}\par
\vskip\baselineskip
- \bgroup
- \centering
- {\fontsize{16}{23}\selectfont
- \@jtitle\par
- }%
- \vskip.25\baselineskip
- \ifx\@jsubtitle\empty
- \else
- {\huge
- \@jsubtitle\par
- }%
- \vskip.25\baselineskip
- \fi
- {\LARGE
- \@outputJauthorlist\par
- }%
- \vskip.5\baselineskip
- {\fontsize{10.5}{15}\selectfont
- \J@affiliate\par
- \Jp@affiliate\par
- \ifx\@MailAddress\empty
- \fmt@Ema
- \ifx\header@ma\empty
- \vskip.5\baselineskip
- \else
- E-mail: \Mail@ddress\par
- \vskip.5\baselineskip
- \fi
- \else
- E-mail: \@MailAddress
- \vskip.5\baselineskip
- \fi
- }%
- \egroup
+%
+% My paper doesn't have a Japanese title.
+% The template still insists on printing author names and
affiliations in Japanese.
+% Without a title, it author names and affiliations look kind of stupid.
+% I think this is the part that does it, so I'm commenting it out
in an effort to reduce the amount of stupid in this paper.
+%
+% \bgroup
+% \centering
+% {\fontsize{16}{23}\selectfont
+% \@jtitle\par
+% }%
+% \vskip.25\baselineskip
+% \ifx\@jsubtitle\empty
+% \else
+% {\huge
+% \@jsubtitle\par
+% }%
+% \vskip.25\baselineskip
+% \fi
+% {\LARGE
+% \@outputJauthorlist\par
+% }%
+% \vskip.5\baselineskip
+% {\fontsize{10.5}{15}\selectfont
+% \J@affiliate\par
+% \Jp@affiliate\par
+% \ifx\@MailAddress\empty
+% \fmt@Ema
+% \ifx\header@ma\empty
+% \vskip.5\baselineskip
+% \else
+% E-mail: \Mail@ddress\par
+% \vskip.5\baselineskip
+% \fi
+% \else
+% E-mail: \@MailAddress
+% \vskip.5\baselineskip
+% \fi
+% }%
+% \egroup
\bgroup\large
\leavevmode
\unhbox\jabstractbox\par
@@ -2239,7 +2245,11 @@
\newcounter{subsubsection}[subsection]
\newcounter{paragraph}[subsubsection]
\newcounter{subparagraph}[paragraph]
-\renewcommand{\thesection}{\@arabic\c@section.}
+%
+% Whoever thought it's a great idea to place periods after
section numbers should be shot.
+%
+%\renewcommand{\thesection}{\@arabic\c@section.}
+\renewcommand{\thesection}{\@arabic\c@section}
\renewcommand{\thesubsection}{\thesection\,\@arabic\c@subsection}
\renewcommand{\thesubsubsection}{%
\thesubsection.\,\@arabic\c@subsubsection}
@@ -2359,7 +2369,7 @@
\inhibitglue #1%
\else
\def\@makefnmark{\kern0pt\hbox to \z@{%
- $^{\mbox{\tiny \kern-.5zw (\@thefnmark{})\kern-.5zw}}$\hss}}%
+ $^{\mbox{\tiny \kern-.5zw (注\@thefnmark{})\kern-.5zw}}$\hss}}%
\kanjiskip\z@ \@plus 1fill \@minus 1fill\xkanjiskip=\kanjiskip
\jmathkanjiskip=\kanjiskip
\hbox to 5zw{\inhibitglue #1\hfil}%
@@ -3135,11 +3145,11 @@
\kern 2.715\p@}
\def\@makefnmark{\hbox{$^{\mbox{\tiny \kern-.5zw
- (\kern.1zw\@thefnmark{})\kern-.5zw}}$}}
+ (注\kern.1zw\@thefnmark{})\kern-.5zw}}$}}
\newcommand\@makefntext[1]{\parindent1zw
\noindent\hbox{\kern-.5zw
- (\kern.1zw\@thefnmark{})\kern-.5zw\hbox to 1zw{\hss :\hss}}#1}
+ (注\kern.1zw\@thefnmark{})\kern-.5zw\hbox to 1zw{\hss :\hss}}#1}
\def\thefootnote{\@arabic\c@footnote}
\def\thempfootnote{\@fnsymbol\c@mpfootnote}
As I mentioned in the first paragraph, I want to generate a patch that
includes both commits:
$git diff HEAD^^ HEAD ieicej.cls
diff --git a/ieicej.cls b/ieicej.cls
index 1c3b947..01debd9 100644
--- a/ieicej.cls
+++ b/ieicej.cls
@@ -1714,51 +1714,57 @@
\setbox\@tempboxa\vbox{%
\def\baselinestretch{\@titlepagebaselinestretch}%
\hskip8mm
- \vtop{\footnotesize\baselineskip3mm
- \hbox{社団法人\hskip1zw 電子情報通信学会}%
- \hbox{THE INSTITUTE OF ELECTRONICS,}%
- \hbox{INFORMATION AND COMMUNICATION ENGINEERS}%
- }\hfill
- \vtop{\footnotesize\baselineskip3mm
- \hbox{信学技報}%
- \hbox{TECHNICAL REPORT OF IEICE.}%
- \hbox{}%
- }\hskip8mm\hbox{}\par
+% \vtop{\footnotesize\baselineskip3mm
+% \hbox{社団法人\hskip1zw 電子情報通信学会}%
+% \hbox{THE INSTITUTE OF ELECTRONICS,}%
+% \hbox{INFORMATION AND COMMUNICATION ENGINEERS}%
+% }\hfill
+% \vtop{\footnotesize\baselineskip3mm
+% \hbox{信学技報}%
+% \hbox{TECHNICAL REPORT OF IEICE.}%
+% \hbox{}%
+% }\hskip8mm\hbox{}\par
\vskip\baselineskip
- \bgroup
- \centering
- {\fontsize{16}{23}\selectfont
- \@jtitle\par
- }%
- \vskip.25\baselineskip
- \ifx\@jsubtitle\empty
- \else
- {\huge
- \@jsubtitle\par
- }%
- \vskip.25\baselineskip
- \fi
- {\LARGE
- \@outputJauthorlist\par
- }%
- \vskip.5\baselineskip
- {\fontsize{10.5}{15}\selectfont
- \J@affiliate\par
- \Jp@affiliate\par
- \ifx\@MailAddress\empty
- \fmt@Ema
- \ifx\header@ma\empty
- \vskip.5\baselineskip
- \else
- E-mail: \Mail@ddress\par
- \vskip.5\baselineskip
- \fi
- \else
- E-mail: \@MailAddress
- \vskip.5\baselineskip
- \fi
- }%
- \egroup
+%
+% My paper doesn't have a Japanese title.
+% The template still insists on printing author names and
affiliations in Japanese.
+% Without a title, it author names and affiliations look kind of stupid.
+% I think this is the part that does it, so I'm commenting it out
in an effort to reduce the amount of stupid in this paper.
+%
+% \bgroup
+% \centering
+% {\fontsize{16}{23}\selectfont
+% \@jtitle\par
+% }%
+% \vskip.25\baselineskip
+% \ifx\@jsubtitle\empty
+% \else
+% {\huge
+% \@jsubtitle\par
+% }%
+% \vskip.25\baselineskip
+% \fi
+% {\LARGE
+% \@outputJauthorlist\par
+% }%
+% \vskip.5\baselineskip
+% {\fontsize{10.5}{15}\selectfont
+% \J@affiliate\par
+% \Jp@affiliate\par
+% \ifx\@MailAddress\empty
+% \fmt@Ema
+% \ifx\header@ma\empty
+% \vskip.5\baselineskip
+% \else
+% E-mail: \Mail@ddress\par
+% \vskip.5\baselineskip
+% \fi
+% \else
+% E-mail: \@MailAddress
+% \vskip.5\baselineskip
+% \fi
+% }%
+% \egroup
\bgroup\large
\leavevmode
\unhbox\jabstractbox\par
@@ -2239,8 +2245,12 @@
\newcounter{subsubsection}[subsection]
\newcounter{paragraph}[subsubsection]
\newcounter{subparagraph}[paragraph]
-\renewcommand{\thesection}{\@arabic\c@section.}
-\renewcommand{\thesubsection}{\thesection\,\@arabic\c@subsection}
+%
+% Whoever thought it's a great idea to place periods after
section numbers should be shot.
+%
+%\renewcommand{\thesection}{\@arabic\c@section.}
+\renewcommand{\thesection}{\@arabic\c@section}
+\renewcommand{\thesubsection}{\thesection.\,\@arabic\c@subsection}
\renewcommand{\thesubsubsection}{%
\thesubsection.\,\@arabic\c@subsubsection}
\renewcommand{\theparagraph}{% (
This looks wrong, since it doesn't include the last commit. For
example, changes to line 3145 are not there. It appears to include
changes from the second-last commit (e.g. the stuff around line 1714).
My questions:
1) What am I doing wrong?
2) How can I get the diff to include all the commits in their entirety?
3) Is this a bug?
Cheers,
Michael
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html