From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <39F59DAA.3B6848D2@avilink.net> From: Alexander Bokovoy X-Mailer: Mozilla 4.72 [en] (X11; I; Linux 2.2.18-1-avilink i686) X-Accept-Language: be, ru, en MIME-Version: 1.0 To: devel@linux.iplabs.ru Subject: Re: [devel] Q: package repository References: <20001024163817.A27782@LDV.fandra.org> Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit Sender: devel-admin@linux.iplabs.ru Errors-To: devel-admin@linux.iplabs.ru X-BeenThere: devel@linux.iplabs.ru X-Mailman-Version: 2.0beta6 Precedence: bulk Reply-To: devel@linux.iplabs.ru List-Help: List-Post: List-Subscribe: , List-Id: IPLabs Linux Team Developers mailing list List-Unsubscribe: , List-Archive: http://www.logic.ru/pipermail/devel/ X-Original-Date: Tue, 24 Oct 2000 17:33:14 +0300 Date: Tue, 24 Oct 2000 17:33:14 +0300 Archived-At: List-Archive: List-Post: "Dmitry V. Levin" wrote: > > Greetings! > > Первоначально я планировал разработать этот вопрос самаму, несколько > позднее - разработать и обсудить здесь, однако так сложилось, что времени > сосредоточиться на решении этого вопроса у меня нет, а решать его надо. > > Итак, при наличии двух и более постоянных разработчиков (в отличии от > RE <= 7.0) для нормальной продуктивной работы требуется package > repository. Основные требования, предъявляемые к subj, таковы: > > + Revision Control: > Единица модульности - пакет. > Хранится более одного релиза (каждого пакета), changelog к каждому > релизу, и т.д (как в RCS, CVS, etc.) > + Минимальный траффик: > Требуется в максимальной степени избежать издишнюю перекачку > многомегабайтных "pristine sources" туда-сюда при commit'ах и > checkout'ах, в предположении, что package repository server расположен > на быстром канале, в отличие от разработчика. > + Возможность сопряжения с подсистемами автоматической сборки и > автоматического обновления "pristine sources" (этих подсистем пока нет). > > Что будет единицей хранения (файл, архив файлов, etc.), зависит от > реализации. > > Жду Ваших идей. Предлагаю как вариант следующую систему: 1. Репозитарий разбивается на две части -- оригинальные исходные тексты и наши патчи. Первые хранятся в виде отдельных каталогов с оригинальными tar.bz2 (tar.gz) и обновляются при обновлении версии продукта. Вторые находятся в CVS, где каждый модуль совпадает по имени с каталогом в первой части. 2. Каждый приходящий патч при commit проверяется на наличие в имени наиболее распространенных окончаний сжатых файлов (.gz, .bz2, .tar.они-же, другие варианты), раскручивается и выполняется diff с последней версией в репозитарии (которая тоже раскручивается перед сравнением). Таким образом, фактически, подменяется способ хранения пакетов в CVS: CVS ведет diff-ы между патчами для бинарных исправлений и ведет историю обычных файлов (например, SPECS) как обычно. 3. Вторая часть репозитария представляет собой фактически содержимое nosrc.rpm. -- Sincerely yours, Alexander Bokovoy The Midgard Project | www.midgard-project.org | Aurora R&D team Minsk Linux Users Group | www.minsk-lug.net | www.aurora-linux.com IPLabs Linux Team | linux.iplabs.ru | Architecte Open Source -- With clothes the new are best, with friends the old are best. _______________________________________________ Devel mailing list Devel@linux.iplabs.ru http://www.logic.ru/mailman/listinfo/devel