如果我运行git diff
我就会得到这个
diff --git a/README b/README
index 8d78ee4..67451cd 100644
--- a/README
+++ b/README
@@ -1,3 +1,3 @@
dog
-cat
+fox
bird
但我只想要这个
-cat
+fox
我最终使用了这个
git diff --color | awk '/^\033\[3[12]m/'
答案 0 :(得分:3)
这适用于我的系统:
git diff --color | grep -P '\e\[3[12]m'
它使用颜色输出来区分这些线条。通过搜索绿色和红色标记,它应该只打印添加和删除的行。
如果您需要修改它,This answer可能有助于更好地理解颜色方面。
答案 1 :(得分:1)
您可以使用-U
或--unified
标记来指定要显示的上下文数量。
-U<n>, --unified=<n>
Generate diffs with <n> lines of context instead of the usual three. Implies -p.
您需要-U0
或--unified=0
。
据我所知,git没有提供抑制标题的方法。
答案 2 :(得分:0)
SED
git diff | sed '/^i/{N;N};/^[-+]/b;d'
AWK
git diff | awk '/^i/{c=NR}NR>c+2&&/^[-+]/'
使用两种解决方案:
+++
和---
行