Wie bekomme ich einen Account in gerrit?
----------------------------------------

1) Ihr habt einen Github- oder Google-Account
Dann geht ihr auf https://mg.mud.de/gerrit/ und benutzt oben rechts
"Sign-in".
Anschliessend geht ihr oben rechts in die Einstellungen eures Accounts oder
hierhin: https://mg.mud.de/gerrit/#/settings/
Dort koennt ihr euren SSH-Key hinterlegen und einige andere Einstellungen
vornehmen. Im Falle des Login via Google koennt ihr (glaube ich) auch euren
Usernamen einmalig festlegen. In jedem Fall koennt ihr einen Anzeigenamen
(Full Name) hinterlegen.
Der als Username bezeichnete ist der, den ihr fuer git+ssh braucht.
Nach Accounterstellung sagt ihr bitte einem EM oder allen euren RMs Bescheid,
damit diese euch in die richtigen Gruppen aufnehmen. ;-)


2) Ihr habt weder einen Github- noch einen Google-Account
   (und wollt euch keinen)
In dem Fall braucht ihr einen gerrit-Admin (zur zeit ich oder Arathorn).
Dieser kann einen Benutzer anlegen. In diesem Fall koennt ihr gerrit aber
NICHT ueber die Weboberflaeche benutzen, nur via git + ssh. Auch muss dann
der Gerrit-Admin euren SSH-Key eintragen.


Abschnitt fuer Erzmagier / Admins
---------------------------------

1) Accounts per Kommandozeile anlegen:
   cat ~/.ssh/id_<magier>.pub | ssh mgg gerrit \
     create-account --group "" --ssh-key - <magiername>

2) Account in Gruppen aufnehmen (Web):
  Auf https://anonymizer.zesstra.de:8443/#/admin/groups/
  Gruppe auswaehlen und unter "Member" hinzufuegen.
  (Vorsicht: nicht ohne weiteres eine andere Gruppe dort aufnehmen!)
  
3) Account per Kommandozeile in Gruppen aufnehmen:
  gerrit set-members \
      -a alice@example.com -a bob@example.com \
        -r eve@example.com <group1> <group2> ...

4) Magier bittet euch, in passende Gruppen aufgenommen zu werden:
  Die folgenden Gruppen sollte er bekommen:
  - u_<magier> (ggf. anlegen, wenn nicht existiert)
  - Vollmagier (wenn kein Lehrling mehr)
  - RM-* (wenn er RM-Posten hat)
  - GM-* (wenn er Gildenmagier ist)
  - Regionsmitglieder * (in den Regionen, in denen er Mitglied ist)

  Achtung: der Username eines Magier kann, aber MUSS nicht mit dem Magiernamen
  uebereinstimmen. Die Gruppe u_<magier> MUSS aber immer dem Magier
  entsprechen.

