Подтвердить что ты не робот

Что это значит, когда Git говорит "переписать" или "переименовать" в сообщении коммита?

Запуск a git commit приводит к следующему выводу:

[[email protected]] git: git commit -a -m "StreamIt instrumentation"
[master 263410f] StreamIt instrumentation
62 files changed, 6117 insertions(+), 5748 deletions(-)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/ClusterBackend.java (91%)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/ClusterCodeGenerator.java (95%)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/cluster/code/FlatIRToCluster.java (94%)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/common/ToCCommon.java (92%)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/flatgraph/ScheduledStaticStreamGraph.java (93%)
rename Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/sir/lowering/fission/{StatelessDuplicate.java => HorizontalFission.java} (98%)
rewrite Code/ALCHEMY/streamit-src-2.1.1/src/at/dms/kjc/sir/lowering/partition/dynamicprog/DynamicProgPartitioner.java (93%)
  • Что означает git, когда он сообщает файл как 'rewrite'?
  • В чем смысл связанного процента?
  • Почему процент, связанный только с этими строками среди 62, измененных в этой фиксации?
4b9b3361

Ответ 1

Git использует эвристику, чтобы определить, было ли изменение переименованием или копированием файла, а также если это "переписывание" файла. Грубо говоря, если разница между старой и новой версиями больше, чем сама новая версия, это "переписать".

Это настраивается для исходного сценария git для изменения исходных файлов, чаще всего для локализованных изменений: поскольку он основан на линейном разграничении, такие вещи, как переименование исходного файла, могут вызвать его. Кроме того, поскольку он определяется "на лету", параметры diff, такие как "-b" и "-w", могут изменить оценку того, является ли изменение переписыванием (или копией или переименованием).

Процент git "индекс различий" (в отличие от процентного "индекса подобия" для переименования или копирования). Вероятно, что-то вроде процента строк в файле, который изменился.