В настоящее время я работаю над инструментом генерации исходного кода. Чтобы убедиться, что мои изменения не привносят никаких новых ошибок, a diff
между выводом программы до и после моих изменений теоретически будет полезным инструментом.
Однако это оказывается сложнее, чем можно подумать, потому что инструмент выводит строки, в которых порядок не имеет значения (например, import
операторы, объявления функций и т. Д.), В полуслучайном порядке. Из-за этого выходные данные diff
загромождены многими изменениями, которые фактически являются только строками, перемещенными в другую позицию в том же файле.
Есть ли способ заставить diff игнорировать эти шаги и выводить только те строки, которые действительно были добавлены или удалены?
diff
инструмент сможет отделить действительные ходы от недействительных, так как порядок инструкций в коде имеет значение, и случаи, когда это не так, ограничены (импорт, объявление функций и классов, так далее.) ?