Главный файл self.tex включает кучу \include и используется bibtex (\bibliography{self} \bibliographystyle{elsarticle-num}). Делаю коммит на git. Затем сравниваю версии. Команда git latexdiff HEAD~1 --main self.tex работает отлично. В \tmp создается файл, в котором изменения подчеркнуты синим. Как написано в мане, при наличии ключа запусается latexpand, который все объединяет в один файл, и затем уже запускается latexdiff. Но изменения в ссылках не дает. Для этого надо поставить ключ --bibtex (display changes in the bibliography (runs bibtex to generate *.bbl files and include them in the source file using latexpand --expand-bbl before computing the diff). С таким ключом компилит первый раз, затем встает надолго и выдет ошибку
! TeX capacity exceeded, sorry [input stack size=5000].
\@makeother #1->\catcode `#1
12\relax
l.2340 ...://dx.doi.org/10.1002/andp.19404300504}}
! ==> Fatal error occurred, no output PDF file produced!
Transcript written on self.log.
No PDF file generated.
Working directory: /tmp/git-latexdiff.5207/new
Expected PDF: ./self.pdf
Error during compilation. Please examine and cleanup if needed:
Directory: /tmp/git-latexdiff.5207/new/.
File: self.tex
Problem: command 'pdflatex' (third run) failed.
WARNING: Inconsistency in length of input string and parsed string:
This often indicates faulty or non-standard latex code.
In many cases you can ignore this and the following warning messages.
Note that character numbers in the following are counted beginning after \begin{document} and are only approximate.
url\endcsname\relax \def\url#1{\texttt{#1}}\fi \expandafter\
^^
Missing characters near word 24513 character index: 250186-250188 Length: 1 Match: |1| (expected match marked above).
ef\endcsname\relax \def\href#1#2{#2} \def\path#1{#1}\fi \PAR
^^
Missing characters near word 24536 character index: 250334-250336 Length: 1 Match: |1| (expected match marked above).
\endcsname\relax \def\href#1#2{#2} \def\path#1{#1}\fi \PAR \
^^
Missing characters near word 24538 character index: 250336-250338 Length: 1 Match: |2| (expected match marked above).
dcsname\relax \def\href#1#2{#2} \def\path#1{#1}\fi \PAR \bib
^^