Ответ эксперта

Как передать репозиторий, чтобы сохранить историю изменений?

Вопрос по направлению: Экспертиза исходного кода на Java

Ответ

Передавать нужно полную зеркальную копию репозитория, а не архив рабочего каталога. Архив сохраняет только последнее состояние файлов: истории изменений, веток, меток и сведений о слияниях в нём нет, поэтому вопросы о датах и последовательности работ по такому материалу остаются без ответа. Зеркальная копия создаётся штатными средствами системы контроля версий одной командой.

До копирования важно ничего не «прибирать»: не выполнять принудительную перезапись веток, перебазирование, удаление веток и меток. Такие операции уничтожают именно те следы, которые предстоит исследовать. Это относится и к секретам: если в историю когда-то попали пароли или ключи, вычищать их оттуда не нужно — правильнее отозвать их и выпустить заново в работающих системах, а историю оставить нетронутой. Учтите, что зеркальная копия переносит не всё: локальный журнал перемещений веток и удалённые из истории объекты в неё не попадают и хранятся ограниченное время, поэтому при споре именно о переписывании истории копируют служебный каталог репозитория целиком.

Вместе с копией передайте контрольные суммы и сведения о том, откуда, когда и кем она выгружена. Если экспертиза уже назначена, материалы идут не напрямую эксперту, а через суд или орган расследования.

Актуализировано
Обсудить задачу

Нужна экспертиза или консультация?

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

  • Подберём специалиста
  • Поможем с вопросами
  • Оценим срок и стоимость
Оценить материалы или позвоните 8 (800) 333-24-09 Бесплатный звонок по России