Как включить ThrowTheSwitch/Unity в проект C?

Я хотел бы использовать ThrowTheSwitch Unity для своих модульных тестов в нескольких проектах, поэтому у меня есть такая общая структура:

.
├── README.md
├── Makefile
├── src
│   ├── ...
│   └── main.c
└── test
    ├── vendor
    │   ├── unity.c
    │   └── unity.h
    └── test_main.c

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

  1. Подмодули Git
    • плюсы: только git, единственный источник правды
    • минусы: получить весь репозиторий Unity, в то время как требуется всего 3 файла
  2. Подмодули Git с разреженной проверкой
    • плюсы: получаю только то, что мне нужно
    • минусы: нужен хак для включения разреженной проверки
  3. Поддерево Git
    • плюсы: безопасно, если нет интернета
    • минусы: сохранить локальные копии единства в истории
  4. Wget из релиза
    • плюсы: очень просто, очень эффективно
    • минусы: зависимость отwget а также tar и Интернет (без локального кеша)
  5. Локальная копия единства
    • плюсы: максимально простое решение, эффективное
    • минусы: нет SSOT, все похожие проекты будут иметь свою локальную копию единства, не будет отслеживаться, какая версия единства синхронизируется.

Кажется, ни один из вышеперечисленных методов не идеален, и я не знаю, какой из них выбрать. Лучшим решением было бы иметь простой менеджер пакетов сpackage.json файл, в котором перечислены мои зависимости и их версии.

Есть ли другое / лучшее решение?

0 ответов

Другие вопросы по тегам