Changes to our Git infrastructure

Jan Kundrát jkt at kde.org
Tue Jan 6 12:07:40 GMT 2015


On Monday, 5 January 2015 22:22:19 CEST, Boudewijn Rempt wrote:
> Usually, half-way through they ask me, why doesn't KDE use github

I do not understand how stuff would change if we used GitHub, though. There 
would still be that huge gap of not understanding which of the repos to 
use. I think that this is easy to solve with individual apps, but it's a 
hard problem when it comes to a platform, or indeed to an environment where 
the border between the individual pieces is unclear (e.g. which repo 
contains the plasma clock applet in KDE4, and where is it found in 
plasma5)? I do not have an answer on how to make this more obvious or 
beginner friendly.

The contributors still have to know what a DVCS is, and have to understand 
the concept of a commit and what a push means. But all of that applies to 
GitHub as well.

About the only difference that I can see are GitHub's pull requests. I 
understand that the knowledge of how to create a PR there is pretty 
widespread among our contributors. The fact that ReviewBoard doesn't allow 
actual approval (i.e. where it's approved *and* merged into our SCM) 
doesn't help here at all, that's also true.

I would encourage you to read 
https://techbase.kde.org/Development/Gerrit#Getting_Started . Do you think 
that the workflow proposed there is reasonably beginner-friendly?

We can then discuss ways in which it can be simplified. E.g. the need to 
set up an extra remote can go away easily *if* we agree on directing pushes 
to Gerrit once (and if) it's adopted. A website listing all projects can 
easily show a copy-pasteable link on how to clone and get the change-id 
hook in place during the initial clone, etc. We can add some scripting to 
sync SSH keys from LDAP to Gerrit, so that people only have to register 
with Identity and they'll be all set. That all is possible.

What I'm saying here is that I believe that the feature set supported by 
Gerrit is actually very close to that of GitHub. It's "different" because 
there's no "fork me" button and the concepts do not map 1:1 to each other, 
but the general ideas are very similar.

Cheers,
Jan

-- 
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/




More information about the kde-core-devel mailing list