Для этого есть малоиспользуемый режим
--no-index:git diff --no-index ./release-old ./release-new
Git рекурсивно сравнит два каталога и покажет привычный цветной diff с именами файлов и изменёнными строками. Репозиторий для этого не нужен.Это удобно при разборе двух распакованных сборок, сгенерированных конфигураций или результатов работы программы:
git diff --no-index \
/tmp/output-before \
/tmp/output-after
Можно использовать и для отдельных файлов:
git diff --no-index nginx.conf.old nginx.conf.new
Есть важная деталь для скриптов: при найденных различиях команда завершается с кодом 1, а при полном совпадении — 0. Поэтому 1 здесь не означает обычную ошибку выполнения.
git diff --no-index old/ new/
echo $?
🔥 Если нужен
diff двух произвольных каталогов, возможно, привычный интерфейс Git уже умеет именно то, что нужно.🚪 Linux Ready | #совет
