Как прочитать и применить файл .gitignore из кода C++?

Я пишу на C++ приложение для синхронизации файлов между двумя директориями. В синхронизируемых директориях могут быть репозиториии git, которые содержат файлы .gitignore. Я хочу сделать так, чтобы моё приложение читало эти файлы .gitignore и при синхронизации игнорировало те же файлы, что и git. Формат паттернов .gitignore не простой и быстро и надёжно реализовать его самостоятельно не получится. Поэтому хотелось бы найти готовую библиотеку, которая бы могла прочитать файл .gitignore, а затем определить нужно ли игнорировать определенный файл или нет. Есть библиотека libgit2, но она рассчитана на полноценную работу с репозиториями git. Есть опасения, что она будет медленно работать и потреблять много памяти.

Может быть существует какая-нибудь готовая библиотека, которая позволяет только читать файлы .gitignore, без необходимости читать другие файлы репозитория?

Так же подойдёт библиотека, которая преобразует паттерны .gitignore (со звездочками*) в регулярные выражения.

Существуют ли подобные библиотеки?


Ответы (0 шт):