On Fri, Mar 04, 2011 at 11:25:36PM +0300, Vitaly Lipatov wrote: > On 3 марта 2011, Afanasov Dmitry wrote: > ... > > эта система очень смешно смотрится после git clone > > git.alt:/gears. смотришь git log, а там то есть иходники, то > > их нету - мистика! приходится ману на лишний каст $ cat > > .gear/tag/list делать и уже потом checkout -b. > Дмитрий, а можно подробнее? Меня всегда приводят в недоумение > такие репозитории, и я не понимаю, что с ними делать, чтобы, > допустим, обновить до следующей версии. Мне кажется, слишком > много действий. На http://altlinux.org не нашёл. ну, есть два способа. 1. qgit. до коммита Merge branch 'upstream' видны два коммита. правда кто из них master, а кто upstream в qgit не видно, нужен оригинальный репозитарий. но можно восстановить чисто логикой: checkout левый и checkout правый. где .gear - тот master, где нет - тот upstream. это если не дай бог git merge был сделан только по двум бранчам. 2. .gear/tags/list. в нашем случае он содержит ce98d62eb52bb76d9bc8f8b21969ffe078330c5f upstream этот hash в qgit как раз один из предков Merge branch 'upstream'. радуемся, что у нас тут бранч, а не тег, как к примеру у меня и делаем git checkout -b upstream ce98d62eb52bb76d9bc8f8b21969ffe078330c5f а дальше тривиально: gear-update .; git checkout master; git merge -s ours upstream; gear-update-tag -avc если забыть -s ours, то исходники появятся master. когда-то мне здесь же сказали, что gear хранит всю необходимую информацию для сборки, а значит и теги исходников, которые он хранит в .gear/tags. к сожалнию, gears хранит инфу только для сборки, для обновления же её приходится вычислять, особенно в случах с -s ours и -s subtree. ничего страшного, просто утилита, облегчающая работу, тратит время на танцы с git, вместо работы с кодом. что иногда провоцирует эмоциональные всплески :) -- С уважением Афанасов Дмитрий