An open API service indexing awesome lists of open source software.

https://github.com/warjohn/filelogs-comparisons


https://github.com/warjohn/filelogs-comparisons

Last synced: 11 months ago
JSON representation

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
Файлы отличаются только временем и местом сборки
```