21

对于我即将发表的学士论文,我需要打印出论文附录的 git-diff 输出。我真的很喜欢 的输出git diff --color-words,但我完全不知道如何在我的 Mac 上将这个 - 彩色并包含行号 - 带到一张纸上。我知道有像SourceTree这样的工具,但即使使用这些工具,我似乎也无法从单个文件的差异中做出漂亮的打印。

好吧,我很确定我不是唯一一个遇到这个问题的人,我找到了一些建议的 ansi2html 解决方案,但它们似乎不适用于我的 git 版本(1.7.10.2)。我还考虑过简单地打印 Github 提交页面(这真的很漂亮,有点像我需要的),但是当我尝试打印它时,浏览器会自动删除所有颜色和格式。

谢谢你的帮助!

4

3 回答 3

19

使用aha. 您可以在 ubuntu 中使用sudo apt-get install aha. 另请参阅 https://github.com/theZiz/aha

$ git diff --color-words | aha > index.html
$ firefox index.html

然后 Firefox 应该能够以彩色打印它。查看aha --help其他一些很酷的选项。

于 2013-12-31T17:50:47.493 回答
10

我刚刚尝试了一个托管在 Github 上的 npm 包:pretty-diff

您可以通过 npm 安装它并像使用 一样运行它git-diff,例如:

pretty-diff HEAD^

将打开一个新的浏览器窗口,您可以将其另存为 html。我试图在不同的浏览器中再次打开它,但仍然显示颜色。您还可以使用您的 github 帐户来创建 Gist 并分享它们。

于 2016-03-17T14:26:38.140 回答
2

由于您使用的是带有终端应用程序的 Mac,因此它就像从终端剪切和粘贴到另一个应用程序一样简单。

于 2019-09-06T18:34:56.070 回答