Я отвечаю за несколько (довольно небольших) программ, которые имеют много кода через разные библиотеки. Мне интересно, какой лучший макет репозитория должен разрабатывать различные проргограммы (и библиотеки) и поддерживать синхронизацию библиотек во всех программах.Макет репозитория Subversion для библиотек, разработанных в разных программах
Ради аргумента, скажем, есть две программы с двумя библиотеками:
- Program1
- Library1
- Library2
- Program2
- Library1
- Library2
Естественно, исправление и усовершенствование для библиотек должны (в конечном счете) объединить все программы. Поскольку библиотеки работают во время работы над различными программами, использование externals definitions не может быть и речи.
Так что я думал, что обрабатывать свои библиотеки на всех, кроме одного места, как vendor branches, но я не уверен, какой будет лучший макет для этого.
я что-то вдоль линий мышления:
- библиотек
- Library1 (предок)
- Library2 (предок)
- Program1
- Program1 кода
- Library1 (поставщик филиал)
- Library2 (поставщик филиал)
- ...
Тогда говорят при разработке Program1 некоторые изменения сделаны для Library2, я объединить их в библиотеках часть репозитория, и объединить их оттуда ко всем другим программам, когда это необходимо.
Слияние с другими программами не всегда может произойти немедленно, люди, работающие над Program2, могут быть близки к выпуску и скорее закончить это, сначала создать тег, а затем обновить все библиотеки.
Я немного обеспокоен тем, что через некоторое время произойдет много слияний и немного головной боли для обслуживания, но на самом деле я не вижу гораздо лучшего решения.
Опять же, это кажется довольно распространенным случаем для меня, поэтому я подумал, что просто попрошу сообщество stackoverflow, какой лучший репозитарный макет для этого?
Библиотеки разрабатываются во время работы над программами ... – Pieter 2008-10-13 19:48:42
Okay ... поэтому у вас есть тегированный релиз библиотеки, которая НЕ является соединительной чертой разработки, и это то, что вы связываете с вашей программой. – 2008-10-13 20:12:26