我们在eclipse项目中引入了一个formatter.xml文件来自动格式化代码。我们遇到的问题是格式化之后我们在执行
时看到未更改文件中存在很多差异$git diff <file>
它显示添加了几行并删除了相同数量的行,但代码中没有引入任何更改。 我的问题是有一个命令可以显示实际发生的变化,并且不会显示更改,例如由于自动格式化,花括号移动了一行。
以下示例:
-public class PPCCustomerFacadeImpl<T extends PPCCustomerData> extends
DefaultCustomerFacade implements PPCCustomerFacade<T>
{
+public class PPCCustomerFacadeImpl<T extends PPCCustomerData> extends
DefaultCustomerFacade implements
+ PPCCustomerFacade<T> {
答案 0 :(得分:3)
如果唯一的差异是各行内的空白变化,那么git diff
会提供可以帮助您的选项;你可以尝试--ignore-all-space
。 Here's a link了解更多信息。如果要更容易键入,可以创建别名:
git config --global alias.diffis 'diff --ignore-all-space'
然后git diffis
将使用选项运行差异。
但是,我认为不可能忽略将非空白文本移动到不同行的更改,如示例中所示。按行跟踪变化是git的基本原则。