Разработчик опубликовал на GitHub код утилиты Repo2txt, которая помогает быстро сохранить любой репозиторий в виде текстового файла. Отмечается, что инструмент может пригодиться для интеллектуального анализа текстов или обучения больших языковых моделей.

Код Repo2txt полностью написан на Python. При этом автор проекта отмечает, что не использовал сторонние зависимости и уместил всё в один файл. Для лучшей производительности применяется многопоточность. Кроме того, Repo2txt учитывает файлы в .gitignore, чтобы исключать их из вывода, поддерживается вывод двоичных файлов (аудио, изображений). Сам исходный файл понятен человеку и может легко токенизироваться для обучения моделей.

Кроме возможности обучать на полученных данных нейросети, разработчик приводит и другие сценарии использования:

  • анализ данных;

  • резервное копирование;

  • локальное версирование.

Сперва утилиту необходимо скачать, локально клонировав исходный репозиторий. После этого для копирования репозиториев надо выполнить файл main.py с указанием пути к репозиторию и флагами:

  • -d, --directory — путь к каталогу (обязательно).

  • -t, --tree — вывод дерева репозитория (без содержимого файлов, отключен по умолчанию).

  • -e, --embed — включить дерево в начале вывода.

  • -b, --binary — ключить двоичные файлы (отключен по умолчанию).

  • -g, --gitignore — использовать .gitignore для исключения файлов.

  • -i, --ignore — можно через запятую указать дополнительный шаблон для исключения файлов.

  • -o, --output — имя файла на выходе.