https://github.com/warjohn/filelogs-comparisons
https://github.com/warjohn/filelogs-comparisons
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/warjohn/filelogs-comparisons
- Owner: warjohn
- License: mit
- Created: 2025-02-05T09:47:04.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-05T09:48:36.000Z (over 1 year ago)
- Last Synced: 2025-02-05T10:36:12.249Z (over 1 year ago)
- Language: Python
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Build Log Comparison Tool
## Описание
Этот скрипт предназначен для сравнения логов сборки проектов, написанных на C/C++. Проекты могут собираться с помощью различных инструментов, таких как **make** или **CMake**, в разных местах и в разное время. Скрипт сравнивает логи сборки и выявляет различия, игнорируя различия в путях к папкам и времени сборки.
### Возможности:
- Сравнение логов сборки из нескольких файлов.
- Игнорирование различий в путях к папкам и времени сборки.
- Вывод различий в стиле команды `diff` из nix-подобных ОС.
- Цветной вывод различий с использованием библиотеки `termcolor`.
- Использование многопоточности для ускорения обработки файлов.
## Установка
Для работы скрипта потребуется установить несколько зависимостей:
```bash
pip install termcolor colorama
```
## Использование
### Запуск скрипта
Для запуска скрипта используйте следующую команду:
```bash
python3 myscript.py ...
```
Пример
```bash
python3 myscript.py dir1/libzip.log dir2/libzip.log
```
### Ожидаемый вывод
Скрипт выводит различия между файлами в формате, аналогичном выводу команды diff. Различия отображаются с цветовой маркировкой:
1. Красным выделяются строки, которые присутствуют только в одном из файлов.
2. Зеленым — строки, которые добавлены или изменены в другом файле.
Пример вывода:
```bash
Differences between dir1/libzip.log and dir2/libzip.log:
--- File1 line 1
+++ File2 line 1
- gcc -o libzip.so ...
+ clang -o libzip.so ...
--- File1 line 5
+++ File2 line 5
- /home/user/project
+ /mnt/c/project```
```
Если файлы идентичны, вывод будет следующим:
```bash
Файлы отличаются только временем и местом сборки
```