Вопрос

MonoDevelop создает их для каждого проекта. Должен ли я включить их в систему контроля версий?

Это было полезно?

Решение

Из сообщения в блоге MonoDevelop :

  

Было несколько ожидающих   отчеты об ошибках, и я также хотел   немного улучшить производительность и   использование памяти. MonoDevelop создает   Информационная база данных парсера (pidb)   файл для каждой сборки или проекта.   Этот файл содержит всю информацию   о классах, реализованных в   сборка вместе с документацией   вытащил из монодока. Файл PIDB имеет   разделы три: первый   заголовок, который содержит среди прочего   вещи версия формата файла   (эта версия проверяется при загрузке   PIDB, и файл будет   регенерируется, если он не соответствует   текущая версия реализации).   Второй раздел является индексом   файл pidb. Содержит индекс всех   занятия в базе данных. Индекс   всегда полностью загружен в память, чтобы быть   в состоянии быстро найти классы.   третий раздел файла содержит все   информация о классе: список   методы, поля, свойства,   документация для каждого из них, и   скоро. Каждая запись в индексе имеет   поле смещения файла, которое можно использовать   полностью загрузить всю информацию   класса (индекс содержит только   имя).

Похоже, это действительно просто оптимизация. Лично я бы не включил его в систему контроля версий, если вы не обнаружите, что он имеет большое значение для производительности: я думаю, что он действительно останется действительным, если над проектом одновременно работает только один человек. (Если он большой и регулярно меняется, вы можете обнаружить, что он также значительно увеличивает нагрузку на репозиторий. Я не проверял, каков на самом деле размер, но стоит проверить.)

Другие советы

Это просто кэшированные данные завершения кода. Как объясняет пост, на который ссылается Джон, основная причина заключается в экономии памяти, хотя они также избавляют вас от ожидания, пока MD будет анализировать все исходные файлы и ссылочные сборки при открытии проекта.

Файлы pidb можно довольно быстро восстановить, поэтому нет смысла хранить их в VCS. На самом деле, как и издержки хранилища VCS, это также может вызвать проблемы, если люди используют разные версии MD с разными форматами pidb, поэтому я настоятельно рекомендую не сохранять их в системе контроля версий.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top