[Geany-devel] Geany is on Github

Matthew Brush mbrush at xxxxx
Fri Oct 7 15:28:04 UTC 2011


Hi all,

For the tl;dr crowd: https://github.com/geany

And now for the long version :)

I've setup Geany as an organization on Github.com[1].  I've also setup 
an empty repository[2] for when the SVN conversion is ready to push.

I will try and explain how this works because it's a little bit 
complicated at first glance.

To create an Organization, you first need to create a personal account. 
  The personal account can't have the same name as the Organization. 
After the personal account is created, you convert it into an 
Organization which is almost a separate entity but is in some ways tied 
to the personal account.

The personal account I created to do this is called 'geanyadmin' (to 
avoid clashing with the Organization name).

Once the organization is created, you can add "Owners" to it.  Owners 
have the exact same access as the 'geanyadmin' user, for example, an 
owner could theoretically sign up the Geany organization to a pay 
account, the Owners have wide-open access to everything.  Basically 
there's no real reason to ever use the 'geanyadmin' account as far as I 
can see, once Owners are added to the Organization.

Just to start, because I had their Github usernames, I've added Enrico 
and Colomban as owners, as well as myself since I need access to set the 
stuff up.  Whoever else should be an Owner (Frank, Nick, etc.) just let 
me (or other Owners) know.  Read below as for why not too many people 
really need to be "Owners".

Now with an Organization, and some Owners who are able to administer the 
Organization, we come to Teams.  Teams are groups of users who all have 
the same permissions on one or more repository.  Teams can be setup to 
have Pull Only, Pull and Push, and Pull, Push and Administer access.

Just to give an example, we'll take the 'geany' repository which will be 
the main Geany core repository.  We could add a team for "Core 
Developers", this group of users could be the existing people with 
commit access to SVN.  In fact I've already created this team, with all 
3 permissions mentioned above, and since I had their Github usernames, 
I've added Colomban and Enrico to this group.

Now, what we could do, for example, is to create another Team called 
"Contributors" or something, and this Team could have Pull only access 
(even without being in a team, anyone can still clone/pull).  Myself, I 
would probably go into the "Contributors" Team, since I contribute a 
fair bit, but I don't have commit access.

Another Team could be called "Translators", and have one of the three 
levels of access control mentioned above, and it could be for all the 
Geany repositories, since translators likely work on both Geany and 
Geany-Plugins.  Another Team could be "Newsletter Writers" or something 
and they could have perhaps Push and Pull access on the "newletters" 
repository only.

For starting, I suggest the following Teams:

  - Core Developers (Pull/Push/Admin)
  - Core Contributors (Pull)
  - Plugin Developers (Pull/Push)
  - Plugin Contributors (Pull)
  - Translators (Pull/Push? or does it go through Frank?)
     - on both geany and plugins repositories?
  - Newsletter Editors (Pull/Push on newsletters repo)

Keep in mind that any Github user can be in as many of the above Teams 
as needed, and we can create any? amount of teams, these are just some 
suggestions.

So anyway, I hope that makes things a bit clear.  Just to sum up some 
key points:

* Colomban and Enrico currently have complete access to the geany 
organization and can do anything at all, including adding other Owners 
or Teams or Team members, etc.

* The geanyadmin user is mostly useless, except maybe for setting up 
some service hooks and things like that.

* I will give Colomban the password for the geanyadmin account.  I can 
still help with setting up on Github since my own personal account is 
setup as an Owner (thought not with commit access on the geany repository).

* On Github, the icon for the geany Organization, as well as the 
geanyadmin can only be show if their email addresses are attached with a 
Gravatar account.  To avoid forcing anyone else to sign up for this 
service, and since I already had an account, I've setup the emails under 
my Gravatar account.  All it does is link team at geany.org to the Geany 
logo I uploaded.  The geanyadmin icon is coming from my Gravatar 
account, attached with matt at geany.org (just for the Gravatar, not for 
the accounts actual email address).

* We need everyone's Github usernames so we can add them as appropriate 
(this won't be my call).  I suggest the existing SVN committers get same 
access as before, and for now, all others go into a Pull Only Team. 
Anyone besides the core devs/committers should also give their Github 
usernames so they can be added, with Pull Only permissions, as Team 
members and be "associated" with the organization (at least this is my 
understanding).

And now I have a question; now that Geany and Geany Plugins are grouped 
together under the same organization, should we drop the geany- prefix 
on the plugins repository?

This would give us the following repositories to start:

  - geany
  - plugins
  - newsletter
  - talks (?)

Comments, questions, and slander are welcome.  And don't forget to give 
me your Github usernames!

Cheers,
Matthew Brush


[1] https://github.com/geany
[2] https://github.com/geany/geany



More information about the Devel mailing list