Bug 19083

Summary: FR: хочется операцию по смене бранча по умолчанию
Product: Infrastructure Reporter: Timur Batyrshin <erthad>
Component: git.altlinux.orgAssignee: Dmitry V. Levin <ldv>
Status: CLOSED FIXED QA Contact: Mikhail Gusarov <dottedmag>
Severity: enhancement    
Priority: P2 CC: evg, evyscr, php-coder
Version: unspecified   
Hardware: all   
OS: Linux   

Description Timur Batyrshin 2009-03-06 13:21:55 MSK
Хочется возможность делать git-checkout <branch> в гит-репозитории на git.alt

Понадобиться это может, когда текущая на момент создания репозитория ветка, в настоящее время удалена, или устарела, Gitweb же будет продолжать показывать ее.


Пример:
http://git.altlinux.org/people/erthad/packages/tremulous.git
http://git.altlinux.org/people/erthad/packages/tremulous.git/HEAD

После клонирования из git.alt:/srpms/ ветка sisyphus была переименована в master. Gitweb, однако, вполне закономерно пытается найти ветку sisyphus, и не найдя ее, не показывает никакую.
Comment 1 Dmitry V. Levin 2009-03-06 14:07:08 MSK
(In reply to comment #0)
> Хочется возможность делать git-checkout <branch> в гит-репозитории на git.alt

Нет, пока не хочется.

> Понадобиться это может, когда текущая на момент создания репозитория ветка, в
> настоящее время удалена, или устарела, Gitweb же будет продолжать показывать
> ее.

От этого checkout не поможет.
gitweb просто смотрит на HEAD.
Comment 2 Mikhail Gusarov 2009-03-06 14:11:14 MSK
Дима, не прикидывайся валенком, пожалуйста.

Сменить хочется HEAD.
Comment 3 Dmitry V. Levin 2009-03-06 14:17:02 MSK
(In reply to comment #2)
> Дима, не прикидывайся валенком, пожалуйста.

А кто я, по-твоему?

> Сменить хочется HEAD.

Тогда надо выражать свою мысль точнее.
Comment 4 Timur Batyrshin 2009-03-06 14:23:35 MSK
(В ответ на комментарий №1)
> > Понадобиться это может, когда текущая на момент создания репозитория ветка, в
> > настоящее время удалена, или устарела, Gitweb же будет продолжать показывать
> > ее.
> 
> От этого checkout не поможет.
> gitweb просто смотрит на HEAD.

Почему не поможет?
[builder@hasher tremulous]$ git-checkout M40
Switched to branch "M40"
[builder@hasher tremulous]$ cat .git/HEAD 
ref: refs/heads/M40
[builder@hasher tremulous]$ git-checkout M41
Switched to branch "M41"
[builder@hasher tremulous]$ cat .git/HEAD 
ref: refs/heads/M41

(В ответ на комментарий №3)
> > Сменить хочется HEAD.
> Тогда надо выражать свою мысль точнее.

Я пока еще плохо разбираюсь в git, про git-checkout же заключил из того, что при его выполнении меняется HEAD на другой бранч.

И - да, в данном случае хочется, чтобы именно можно было выставлять HEAD на любой из бранчей.
Comment 5 Dmitry V. Levin 2009-03-31 03:44:00 MSD
осталось придумать интерфейс
Comment 6 Slava Semushin 2009-04-12 17:19:18 MSD
(В ответ на комментарий №5)
> осталось придумать интерфейс

И поскорей бы..
Comment 7 Mikhail Gusarov 2009-04-12 17:21:04 MSD
Ох.

ssh git.alt set-default-branch <path to git repository> <branch>
Comment 8 Dmitry V. Levin 2009-07-03 01:11:25 MSD
09c8cbe27ac31f1165728cc30660bc3d4578e41c: Added default-branch command.
Comment 9 Slava Semushin 2009-07-12 12:11:53 MSD
(В ответ на комментарий №8)
> 09c8cbe27ac31f1165728cc30660bc3d4578e41c: Added default-branch command.

А как этим пользоваться? В Справочнике по git.alt это не описано, а сам как-то не соображу :(

[c0der@rock ~]$ ssh git default-branch /packages/manedit.git master
RSA host key for IP address '194.107.17.12' not in list of known hosts.
girar-default-branch: /packages/manedit.git: invalid directory name

[c1der@rock ~]$ ssh git default-branch git:packages/manedit.git master
RSA host key for IP address '194.107.17.12' not in list of known hosts.
girar-default-branch: git:packages/manedit.git: invalid directory name

[c1der@rock ~]$ ssh git default-branch /people/php_coder/packages/manedit.git master
RSA host key for IP address '194.107.17.12' not in list of known hosts.
girar-default-branch: /people/php_coder/packages/manedit.git: invalid directory name
Comment 10 Timur Batyrshin 2009-07-13 11:17:03 MSD
(В ответ на комментарий №9)
> А как этим пользоваться? В Справочнике по git.alt это не описано, а сам как-то
> не соображу :(

УМВР
[builder@hasher tremulous]$ ssh git.alt default-branch packages/tremulous master
Enter passphrase for key '/home/builder/.ssh/id_dsa': 
[builder@hasher tremulous]$ 


2ldv: Спасибо!