From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=AWL,BAYES_00, FH_DATE_PAST_20XX autolearn=no version=3.2.5 Date: Sun, 10 Jan 2010 19:46:41 +0200 From: Michael Shigorin To: ALT Devel discussion list Message-ID: <20100110174641.GV1710@osdn.org.ua> Mail-Followup-To: ALT Devel discussion list References: <4B48E735.6040908@altlinux.ru> <20100109223125.GA14247@wo.int.altlinux.org> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20100109223125.GA14247@wo.int.altlinux.org> User-Agent: Mutt/1.4.2.1i Subject: Re: [devel] git submodules vs gear X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 10 Jan 2010 17:46:55 -0000 Archived-At: List-Archive: List-Post: On Sun, Jan 10, 2010 at 01:31:25AM +0300, Dmitry V. Levin wrote: > Now imagine that this commit id uses submodules and required external > commit objects are missing, because no git repository that uses > submodules is required to be self-contained. In this case, gear would > have to attempt to fetch these commits from internet. This is NOT > reliable, and gear would not be able to guarantee reproducibly. Цитируя https://bugzilla.altlinux.org/show_bug.cgi?id=17914#c24: > Привнесение поддержки submodule не должно сломать эту гарантию. Не можешь дать гарантию -- не давай. Особенно если опираешься на услуги посредников. git когда-то давно мог гарантировать _полную_ историю, а потом появились shallow clones и submodules (причём не от прихоти или "разработки ради разработки") и эта гарантия стала ограниченной. Собственно, что legion@ и говорит в #c45. Цитируя #c26 и #c34: > Нарушается принцип достаточности коммита. Ну и что? Не можешь решить проблему за человека -- не мешай ему самому решать их, создавая непреодолимые. "Не навреди". А ключевые принципы, на которые опираются hasher, gear и подобные инструменты -- неплохо было б описывать в их документации. Пока что отсутствие поддержки git submodule в сизифном gear противоречит его же документированной идее ("собирать пакеты из произвольно устроенного git-репозитория") и описанным ограничениям, накладываемым на структуру репозитория. При этом упомянутый тобой принцип в ABOUT.ru.utf8 не описан -- вскользь проскакивает во фразе "согласно которым производится экспорт из коммита репозитория (в форму, из которой можно однозначно изготовить srpm-пакет или запустить сборку)" разве. То есть твоя позиция нарушает явно сформулированный принцип, даже если, как выясняется в баге с патчем, опирается на другой -- нигде не опубликованный до обсуждения в баге, как понимаю. > As you see, there is a fundamental problem: GIT submodule breaks > repository completeness, but gear requires git repositories to be > self-contained. I have no idea how to avoid this problem. Исправить ожидания gear на соответствующие наблюдаемой действительности, разумеется. Возможно, обязав заливать используемые для субмодулей репо на git.alt и указывать соответствие где-нить в .gear/submodules во избежание тупой автоматической траты времени и трафика. При этом технический мерж можно делать прямо перед скручиванием тарбола, как понимаю. И репо чистые, и Дима доволен. -- ---- WBR, Michael Shigorin ------ Linux.Kiev http://www.linux.kiev.ua/