Bug 30718

Summary: gitery doesn't allow to store topgit branches
Product: Infrastructure Reporter: Ivan Zakharyaschev <imz>
Component: giteryAssignee: Dmitry V. Levin <ldv>
Status: NEW --- QA Contact: Andrey Cherepanov <cas>
Severity: enhancement    
Priority: P3 CC: glebfm, ldv
Version: unspecified   
Hardware: all   
OS: Linux   
Bug Depends on: 30720    
Bug Blocks:    

Description Ivan Zakharyaschev 2015-02-10 12:17:32 MSK
There is a quite well-known and convenient tool for managing interdependent patches in Git branches -- topgit. (With respect to gear and packaging, I've written down some notes: http://www.altlinux.org/Git/MergingBranches#topgit . It would be nice to manage the patches that get into the packages as topgit branches, and for maintainers to collectively work on them, and to communicate with upstream using topgit branches and generated patches.)


Unfortunately, girar doesn't allow to store the refs used by topgit:

~/TOOLS/topgit/topgit.gear $ tg remote imz@ALT
tg: Remote imz@ALT can now follow TopGit topic branches.
tg: Next, do: git fetch imz@ALT
~/TOOLS/topgit/topgit.gear $ git fetch imz@ALT
~/TOOLS/topgit/topgit.gear $ tg push -r imz@ALT
Counting objects: 13, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (13/13), 2.60 KiB | 0 bytes/s, done.
Total 13 (delta 6), reused 0 (delta 0)
remote: girar-update: Unrecognized ref name: refs/top-bases/tg_rename        
remote: error: hook declined to update refs/top-bases/tg_rename        
remote: girar-sendmail: email notification about `refs/heads/tg_rename' update sent.        
remote: Repacking repository... done        
remote: Updating committer date cache... done        
To git.alt:packages/topgit.git
 * [new branch]      tg_rename -> tg_rename
 ! [remote rejected] refs/top-bases/tg_rename -> refs/top-bases/tg_rename (hook declined)
error: failed to push some refs to 'git.alt:packages/topgit.git'
~/TOOLS/topgit/topgit.gear $
Comment 1 Ivan Zakharyaschev 2015-02-10 16:45:48 MSK
Well, there is an idea for a workaround when using topgit with gear: store special refs not as refs, but as gear-tags (which is of course necessary for building the package with gear, as described in http://www.altlinux.org/Git/MergingBranches#.D0.B2.D0.BC.D0.B5.D1.81.D1.82.D0.B5_.D1.81_gear ).

Then topgit should be taught to populate its special refs from gear-tags, and then repos kept at git.alt would be suitable for topgit-based workflows.
Comment 2 Ivan Zakharyaschev 2015-02-10 16:49:58 MSK
(В ответ на комментарий №1)
> Well, there is an idea for a workaround when using topgit with gear: store
> special refs not as refs, but as gear-tags 


> Then topgit should be taught to populate its special refs from gear-tags, and
> then repos kept at git.alt would be suitable for topgit-based workflows.

https://bugzilla.altlinux.org/show_bug.cgi?id=30718#c1