LINUX.ORG.RU

История изменений

Исправление slovazap, (текущая версия) :

Про bisect вообще забудьте - размер диффа изменяется в зависимости от удаления от эталонного коммита немонотонно. Хватит простого скрипта типа:

while git checkout HEAD^; do
  echo -n `git rev-parse HEAD`
  diff -ruN -x .git . /path/to/tree | wc -l
done

и смотрите насколько далеко от нуля блуждает дифф. Если 0 не найдётся, смотрите тот diff что был минимальным, возможно ещё какие-то -x нужны. Я так как-то успешно проставил тэги релизов имея только тарболлы этих релизов.

Из минусов - не умеет нелинейную историю.

Исходная версия slovazap, :

Про bisect вообще забудьте - размер диффа изменяется в зависимости от удаления от эталонного коммита немонотонно. Хватит простого скрипта типа:

while git checkout HEAD^; do
  echo -n `git rev-parse HEAD`
  diff -ruN -x .git . /path/to/tree | wc -l
done

и смотрите насколько далеко от нуля блуждает дифф. Если 0 не найдётся, смотрите тот diff что был минимальным, возможно ещё какие-то -x нужны. Я так как-то успешно проставил тэги релизов имея только тарболлы этих релизов.