В документации Black рекомендуется использовать ловушку перед фиксацией, а не смазывать и чистить фильтры.Обратите внимание, что filter.black.clean
определяет чистый фильтр , и вы не настроили какие-либо грязные фильтры.
Причина, по которой вы не видите изменений в версии файла рабочего дерева, заключается в том, что чистыйФильтр используется при преобразовании версии файла рабочего дерева в индексную (подлежащую фиксации) версию файла.Это не влияет на версию файла рабочего дерева!
Фильтр размазки используется в противоположном направлении: Git имеет файл, который находится в индексе - по любой причине, например, потому что он был простокопируется в индекс как часть операции git checkout
для переключения на конкретную фиксацию и желает преобразовать этот сжатый файл Git-ized в индексе в файл, который вы фактически можете увидеть и отредактировать в своем редакторе, илизапустить с python
.В это время Git пропустит (распакованный) содержимое файла через ваш фильтр пятен.
Обратите внимание, что если вы преобразуете некоторое содержимое файла, предварительное сжатие, в чистый фильтр, а затем извлекаете егоподайте из в хранилище, в указатель и в свое рабочее дерево, вы в это время сможете увидеть, что произошло в чистом фильтре (при условии, что у вас неткомпенсационный фильтр, который отменяет эффект).
В мире переформатирования кода можно было бы использовать clean filter , чтобы превратить все исходные файлы в какой-то канонический (возможно, четырехсторонний).форма пробела) и фильтр smudge для преобразования всех исходных файлов в предпочтительный формат (отступ с двумя пробелами или с восемью пробелами).Если бы все эти преобразования были полностью обратимыми, то, что вы бы увидели в своем рабочем дереве, было бы в вашем предпочтительном формате, а то, что другие увидят в их рабочих деревьях, будетих предпочтительный формат;но то, что увидит сама система контроля версий, будет каноническим, стандартизированным форматом.
Это не то, как на самом деле предназначены черные, хотя, вероятно, их можно использовать и таким образом.