是否可以执行 git diff并以某种方式将输出保存到带有颜色的文件中?
git diff
我知道如何做 git diff > filename.rtf-这保存到一个文件,但我想保存的颜色。
git diff > filename.rtf
试试:
git diff --color > foo.txt
接下来的问题是:
cat foo.txt
或者:
less -R foo.txt
Vim 颜色文件包含 git diff 的漂亮。
打开 崇高文字2中的输出 diff 文件。它显示 diff 颜色。
详述@Gabe 的回答。
您可以将输出通过管道传递给 ansi 到 html 转换器 bash 脚本,并将输出直接传递给 html 文件:
git diff --color|./ansi2html.sh > changes.html
当然 html 可以被任何浏览器查看,所以输出可以在 Windows 等。
Ansi2html 代码在这里: http://www.pixelbeat.org/scripts/ansi2html.sh
保存扩展名为. diff 的文件并在 Notepad + + 、 Vim 或 SublimText 中打开。
git diff > 20150203_someChanges.diff
谢谢@Monsingor
git remote add -f b path/to/repo_b.git git remote update git diff master remotes/b/master > foo.txt
在’* 中提取的差异。SublimText2可以很容易地读取 txt’文件,而不需要设置(通过 View-> Syntax-> Diff)。
我在这里找到了答案: 特定 git 命令的颜色输出。
您可以将 -c color.ui=always传递给任何 git命令,它将在重定向时保持着色
-c color.ui=always
git
你可以上传到 GitHub 并提供相关提交的链接。
允许任何彩色终端文本... git diff 或任何其他... 从浏览器可见
sudo apt-get install aha # https://github.com/theZiz/aha
安装 aha使用上述然后发出
aha
git diff --color mysourcefile | aha > ~/cool_colorized.html firefox ~/cool_colorized.html
作为文件重定向的替代方法,还可以使用 git diff --output选项
git diff --output
git diff --color --output=aFile cat aFile # you would still see the colors
但是,请确保不要使用组合的 diff 格式(对于合并提交的差异) ,如 git diff -c或 git diff --cc
git diff -c
git diff --cc
对于 Git 2.38(Q32022) ,当显示组合差异时,某些差异选项(包括 --output)当前被忽略; 将它们标记为与特性不兼容。
--output
见 犯下 cfb19ae,第三季,第4集(2022年6月18日) by 勒内 · 沙夫(rscharfe)。 (由 朱尼奥 · C · 哈马诺 gitster于 犯下罪行合并,2022年7月11日)
rscharfe
gitster
combine-diff : 如果给定——输出,则终止 埃瓦尔 · 阿恩夫约尔 · 比亚马森报道 签名: René Scharfe
combine-diff
埃瓦尔 · 阿恩夫约尔 · 比亚马森报道 签名: René Scharfe
组合差异的代码目前只写入标准输出。 终止并报告该事实,而不是默默忽略 --output选项。 不过,此时已经创建了(空)输出文件。
因此,错误消息将是:
combined diff and '--output' cannot be used together