[aur-dev] Using git as a backend for the AUR

canyonknight canyonknight at gmail.com
Sun Mar 17 19:34:46 EDT 2013

On Sun, Mar 17, 2013 at 1:33 PM, William Giokas <1007380 at gmail.com> wrote:
> On Sun, Mar 17, 2013 at 01:14:01PM -0400, Daniel Wallace wrote:
>> On Sun, Mar 17, 2013 at 12:43:01PM +0100, Jelle van der Waa wrote:
>> > The AUR currently has ~ 41076 packages, which would bring us to an equal
>> > amount of git repo's. This doesn't seem very efficient to me.
>> >
>> > With svn you can put it all in one repo and checkout a single package
>> > without checking out the whole repo, which is how
>> > [core],[extra],[community] work.
>> >
>> > I know Exherbo uses Git for their repo's but they seem to split it up
>> > into categories [1].
>> >
>> > Git seems to have sparse checkout for this in 1.7, but I don't know how
>> > it works [2]
>> git clone --single-branch git://projects.archlinux.org/svntogit/packages.git -b packages/linux
>> ... then make one for community.git :)
>> and inside, you can do stuff like...
>> git fetch origin packages/bash
>> git checkout -b packages/bash FETCH_HEAD
>> and checkout the other branches
> But this does make it so that either no one has push access, or only a
> very small subset of people have push access for security reasons. The
> whole point of the multiple repos is to allow people full control over
> the whole repo with git, and not have to rely on the `makepkg -S` bits.
> While great for spectating, it's pretty bad for a bunch of people that
> can just simply sign up as contributors. Also, you know what would
> happen if we just gave everyone push access.

I'm fairly certain you can restrict users to only be able to push to
certain branches using hooks. So even if there was a single repository
users wouldn't be able to push to branches they shouldn't be pushing

I don't even think full Git push access is the first logical step in
implementing version control in the AUR. I think the first logical
step would be to have the package submission page have a spot for a
changelog entry and then have the backend take care of all the Git
business itself rather than having users directly pushing. Then
re-assess at a later date and maybe add the ability for direct Git

> Thanks,
> --
> William Giokas | KaiSforza
> GnuPG Key: 0x73CD09CF
> Fingerprint: F73F 50EF BBE2 9846 8306  E6B8 6902 06D8 73CD 09CF

More information about the aur-dev mailing list