* [devel] git-update-server-info and refs
@ 2006-05-06 15:36 Anton Farygin
2006-05-06 17:13 ` Sergey Vlasov
0 siblings, 1 reply; 2+ messages in thread
From: Anton Farygin @ 2006-05-06 15:36 UTC (permalink / raw)
To: ALT Devel discussion list
Вопрос к знатокам git'а:
делаю git-update-server-info для скачанного репозитария.
В файле .git/info/refs получается часть тэгов помечено как {}, часть -
не помечено.
Что бы это значило ?
Воспроизвести можно на udev:
git-clone git://git.kernel.org/pub/scm/linux/hotplug/udev.git
cd git
git-update-server-info
И потом посмотреть .git/info/refs для тэга 091
Посмотрел в исходники - там проверяется наличие if (o->type == tag_type)
Для иэга 091 почему-то не выставлен tag_type
Кто виноват ? что делать ?
Rgds,
Rider
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [devel] git-update-server-info and refs
2006-05-06 15:36 [devel] git-update-server-info and refs Anton Farygin
@ 2006-05-06 17:13 ` Sergey Vlasov
0 siblings, 0 replies; 2+ messages in thread
From: Sergey Vlasov @ 2006-05-06 17:13 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 1801 bytes --]
On Sat, May 06, 2006 at 07:36:16PM +0400, Anton Farygin wrote:
> Вопрос к знатокам git'а:
>
> делаю git-update-server-info для скачанного репозитария.
>
> В файле .git/info/refs получается часть тэгов помечено как {}, часть -
> не помечено.
>
> Что бы это значило ?
Вообще ^{} обозначает операцию снятия тэгов - т.е., если ref указывает
на объект типа tag, ref^{} будет указывать на объект какого-либо
другого типа, на который в конечном итоге указывал тэг (если в цепочке
было несколько тэгов, указывающих друг на друга, убирается вся
цепочка).
В .git/info/refs для ссылок, указывающих на объекты типа tag, пишется
две строки - sha1 самого тэга (без ^{}) и объекта, на который указывал
этот тэг (с ^{}; обычно это commit, но в общем случае это не
обязательно).
> Воспроизвести можно на udev:
> git-clone git://git.kernel.org/pub/scm/linux/hotplug/udev.git
> cd git
> git-update-server-info
>
> И потом посмотреть .git/info/refs для тэга 091
>
> Посмотрел в исходники - там проверяется наличие if (o->type == tag_type)
>
> Для иэга 091 почему-то не выставлен tag_type
>
> Кто виноват ? что делать ?
Виноват в данном случае мантейнер udev, который с некоторого времени
перестал создавать тэги с описаниями при выпуске версий udev. В git
предполагается, что тэг без описания (просто файл в ./git/refs/tags,
содержащий sha1 commit-а) не нужен никому, кроме разработчика, который
его поставил (возможно, временно), и по умолчанию такие тэги не
забираются при выполнении git fetch (только при явном вызове git fetch
--tags). А вот полноценный тэг, для которого создаётся отдельный
объект, содержащий текстовое описание и, возможно, подпись GPG, git
fetch будет забирать автоматически, если объект, на который указывает
этот тэг, доступен локально.
[-- Attachment #2: Type: application/pgp-signature, Size: 191 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-05-06 17:13 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-05-06 15:36 [devel] git-update-server-info and refs Anton Farygin
2006-05-06 17:13 ` Sergey Vlasov
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git