Git-diff到HTML

5 html python git diff

我正在寻找一种从git-diff输出生成HTML文件的方法,最好使用python.我一直在查看http://docs.python.org/library/difflib.html而无法弄清楚如何使用git-diff输出作为输入.

任何线索?

非常感谢

mik*_*iku 8

您可以使用pygments命令行脚本来获取语法高亮的HTML输出.

安装:

$ easy_install Pygments
Run Code Online (Sandbox Code Playgroud)

例:

$ git diff HEAD^1 > last.diff
$ pygmentize -f html -O full,style=trac -l diff -o last.diff.html last.diff

$ # mac only
$ open last.diff.html
Run Code Online (Sandbox Code Playgroud)

或更短:

$ git diff | pygmentize -f html -O full,style=emacs -l diff
Run Code Online (Sandbox Code Playgroud)

PS要查看所有可用的样式,请尝试:

$ pygmentize -L styles
Run Code Online (Sandbox Code Playgroud)

PPS要使管道完整,您可以使用此技巧:

$ git diff | pygmentize -f html -O full,style=emacs -l diff | browser
Run Code Online (Sandbox Code Playgroud)