我使用Git来跟踪我对项目所做的更改。我经常在我的文件中移动整个部分。请求github或sourcetree忽略移动的行?
当我使用OSX的Sourcetree和GitHub查看差异时,它会将那些移动的行显示为已删除(并在其他地方显示为新行)。这在视觉上令人困惑。
如何指示Sourcetree或GitHub忽略移动的线条,并且只显示线条被删除,如果它们真的走了?
我使用Git来跟踪我对项目所做的更改。我经常在我的文件中移动整个部分。请求github或sourcetree忽略移动的行?
当我使用OSX的Sourcetree和GitHub查看差异时,它会将那些移动的行显示为已删除(并在其他地方显示为新行)。这在视觉上令人困惑。
如何指示Sourcetree或GitHub忽略移动的线条,并且只显示线条被删除,如果它们真的走了?
简短的回答,你不能。
如果您不喜欢git计算的默认差异,您可以尝试使用--patience
(使用“耐心差异”算法生成差异)和--histogram
(使用“直方图差异”算法生成差异。选项git diff。
另外这可能有助于Customizing-Git-Git-Attributes#Binary-Files看到Diffing Binary Files。
另一种方法是使用命令行。您可以指示git的尝试和猜测何时行代码已被移动
git blame -M -w <file>
你应该表现出它认为是这些线路的原作者作者和SHA1的。这是一个受过教育的猜测,所以有时候可能是错的。
谢谢。我可以使用-patience与OSX的Sourcetree或Github结合吗? – incandescentman
如果耐心是你的选择,那么你可以将它设置为配置'git config --global diff.algorithm patience' – Tala