From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <449A3A6E.7000308@altlinux.com> Date: Thu, 22 Jun 2006 10:36:30 +0400 From: Anton Farygin User-Agent: Thunderbird 1.5.0.2 (X11/20060502) MIME-Version: 1.0 To: ALT Devel discussion list References: <20060620151921.GU12268@hell.immo.ru> <20060622034932.GA24994@nomad.office.altlinux.org> In-Reply-To: <20060622034932.GA24994@nomad.office.altlinux.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [devel] =?utf-8?b?UTogLmdlYXItcnVsZXMg0LggItCw0L/RgdGC0YDQuNC8?= =?utf-8?b?0L3Ri9C1IiDRgdC+0YDRhtGLINCyINC+0YLQtNC10LvRjNC90L7QvCDQsdGA?= =?utf-8?b?0LDQvdGH0LU=?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.7 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Jun 2006 06:30:24 -0000 Archived-At: List-Archive: List-Post: Dmitry V. Levin wrote: > Hi, > > On Tue, Jun 20, 2006 at 07:19:21PM +0400, Alexey I. Froloff wrote: >> Идея в следующем: >> >> "Апстримные" сорцы лежат в бранче, например upstream, апдейтятся >> там некоторым образом (git pull, git svn fetch, git cvsimport - >> whatever). В рабочем бранче лежат мои патченые исходники, спеки >> и так далее. gear пакует бранч upstream в тарбол и делает >> git-diff-tree между upstream и некоторым tree-ish. Почему >> tree-ish, а не HEAD? А потому что я обычно делаю >> git-mv -k * .* %name, и вот этот %name мне и надо diff'ать. > > Я хочу понять, почему вам недостаточно положить в srpm тарбол, > зачем всё-таки вы (я слышал как минимум от двоих) хотите паковать в srpm > оригинальный тарбол + кумулятивный патч? Понятно почему - многие мантейнеры оригинальных тарболлов (из Mainstream) имеют свойство самостоятельно посещать src.rpm пакеты и забирать оттуда патчи. Я уже несколько раз замечал это за авторами нескольких приложений. > >> Сейчас никто не умеет принимать в качестве аргумента tree-ish, >> только путь. Предлагается следующий синтаксис: >> >> tar: dir name=name base=base branch=branch >> >> diff: dir name=name base=base branch=branch >> >> В первом случае добавляется параметр "branch", в моём примере это >> будет выглядеть так: >> >> tar.bz2: . name=@name@-@version@ base=@name@-@version@ branch=upstream-@version@ >> >> Где upstream-@version@ это имя тега, который я ставлю по >> результатам чекаута (чисто для удобства). >> >> diff: projectname name=@name@-@version@-alt.patch base=. branch=upstream-@version@ >> >> projectname - имя каталога с сорцами в рабочем бранче. По нему >> получаем tree_ish_2. base - имя каталога с сорцами в бранче >> upstream. По нему и по имени бранча получаем tree_ish_1. Дальше >> делается: >> >> git-diff-tree --patch-with-stat $tree_ish_1 $tree_ish_2 > $name.patch >> >> Таким образом получается что у нас "скачет" $tree_id. Это совсем >> бредовая идея или можно начинать готовить патч? ;-) > > Патч, кстати, выглядит нормально. А вот по самой идее у меня есть вопрос. > > Первоначально я исходил из идеи воспроизводимости, т.е. из того, что > результат работы "gear --tree-ish=ID" будет одинаковым при одинаковых ID. > Если в правилах для gear можно будет указывать произвольные tree-ish, то > это моё предположение не будет выполнено. Почему же ? Всё равно tree-ish2 будет зависить от содердимого tree_ish1 > > Вопрос: насколько эта воспроизводимость важна? Можно ли ей пожертвовать в > пользу предлагаемой возможности? На мой взгляд этого не требуется. Rgds, Rider