git: изменить стиль (пробел) без смены владельца / вины?

У нас есть массивная, древняя кодовая база, которая требует большой очистки. У нас всегда были стандарты кодирования, и все всегда пытались им следовать, но они не соблюдались, поэтому со временем закралось множество нарушений. Многие из них просто проблемы с пробелами, например, использование табуляции вместо пробелов или пробелов, где есть не должно быть или пропущенных пробелов там, где они должны быть. Мы собираемся начать активно обеспечивать соблюдение наших стандартов кодирования, чтобы не допустить появления новых нарушений, но трудно обеспечить их автоматическое соблюдение только в отношении изменений, поэтому было бы неплохо очистить эти старые файлы.

Существуют инструменты, которые могут автоматизировать исправление этих проблем, однако, если я сделаю это, виноват покажется мне как владельцу этих строк, хотя на самом деле я, возможно, никогда их даже не видел. Я знаю, что есть настройка, чтобы обвинение игнорировало изменения пробелов, но я могу ' t заставлять всех использовать обвинения одинаково, включая другие визуальные инструменты и такие вещи, как gitstats. В идеальном мире можно было бы каким-то образом переписать историю, чтобы она выглядела так, как будто нарушения никогда не вводились, без сокрытия того, кто ввел настоящий код, но я не могу найти ничего подобного.

41
задан Jay Paroline 6 November 2010 в 08:12
поделиться