我有一个脚本的最后一行是:
git diff --no-index -- ./a.json ./b.json > ./a-b.diff
diff返回1文件不同时的退出代码,这会使我的脚本报告错误。
如何忽略diff的退出代码,但保留内容到diff文件的输出重定向?
尝试:
git diff --no-index -- ./a.json ./b.json > ./a-b.diff || true
Run Code Online (Sandbox Code Playgroud)
要么 :
git diff --no-index -- ./a.json ./b.json > ./a-b.diff || :
Run Code Online (Sandbox Code Playgroud)
或者,只要您不使用bash -e:
git diff --no-index -- ./a.json ./b.json > ./a-b.diff
true
Run Code Online (Sandbox Code Playgroud)
基本上,您可以在已知的差异之后使用任何命令,这些命令将产生零(成功)退出代码。