Файлове със спецификации за управление на версията на rpm

Конфигурирам компилираща машина за генериране на обороти за голям брой много подобни проекти. Файлът със спецификации за всеки проект е малко по-различен, както по име, така и понякога по зависимости и други атрибути. Всеки проект има собствено git хранилище, съдържащо файловете на проекта.

Тези спецификационни файлове съществуват само и наистина са полезни само за самата система за изграждане; всеки проект може да се инсталира ръчно, но аз пакетирам в rpms за по-лесно автоматизирано внедряване.

Самата система за изграждане също има собствено git хранилище.

Трябва ли спецификационните файлове да бъдат версионирани? И ако да, къде? Трябва ли всеки спецификационен файл да бъде версиран в хранилището за проекта, с който корелира? Или всички те трябва да бъдат с версии в едно и също хранилище като системата за компилация? И най-важното защо?

Притеснявам се, че версиите на спецификациите в хранилищата на проекта ще накарат файловете да не се синхронизират един с друг, докато правя постепенни подобрения в процеса на инсталиране. Също така съм загрижен, че версията на спецификациите в хранилището за компилация ще доведе до забравяне на файловете, когато се правят промени в зависимостите.


person Shishire    schedule 08.11.2012    source източник
comment
Вижте също подобни stackoverflow.com/ въпроси/19082451/   -  person MarkHu    schedule 27.04.2016


Отговори (1)


Работя по проект, при който контролираме версиите на RPM спецификационните файлове в същото дърво на директориите като библиотеката или проекта. Защо? Това поддържа всичко спретнато на едно място. Когато актуализираме изходен файл в библиотеката, тогава спецификационният файл е точно там, за да добави подходящ запис към %changelog, описващ подробно какво е направено за корекция на грешка или подобрение.

За вашата ситуация това е трудно решение. Но мисля, че вашата система за изграждане/инсталиране в крайна сметка ще достигне стабилна точка, докато всичките ви проекти без съмнение ще трябва да бъдат актуализирани в даден момент, когато коригирате грешки. Да, може да е болезнено в краткосрочен план, докато променяте своя процес на изграждане/инсталиране, но след като това се стабилизира, ще бъде по-лесно в дългосрочен план.

person Ogre Psalm33    schedule 10.12.2012