/* Versionverwaltung */ Locking dokumentiert
[stratum0-wiki.git] / Schatzkarte.mw
index f731be4..d99d49a 100644 (file)
@@ -28,6 +28,14 @@ Das Repo hat folgende Struktur:
 
 Die Struktur des Ordners 2013 wiederholt sich für alle weiteren Jahre.
 
+=== Locking ===
+Bei der Versionierung von Binärdateien (Jverein-Datenbank) muss sichergestellt werden, dass nicht aus Versehen zwei Vorstandsentitäten gleichzeitig am Datenbestand arbeiten – ansonsten müsste man beide Änderungen auf Binärebene miteinander vereinen, und das will wirklich niemand. Deshalb wird mit {{WP|File locking|Locking|l=en}} gearbeitet, wofür das gitolite auf [[theodem]] Unterstützung mitbringt.
+
+* '''Vor Beginn der Arbeit''' wird das Skript <code>./lock.sh</code> ausgeführt, das die entsprechenden Dateien sperrt und gleichzeitig auch neue Git-Revisionen holt.
+* Dann kann JVerein benutzt und Git-Commits erstellt werden.
+* ''' Nach Beginn der Arbeit''' wird das Skript <code>./unlock.sh</code> benutzt, um die neuen Revisionen auf den Server zu pushen und das Repo wieder zu entsperren.
+** Falls dieser Schritt vergessen wird, bekommt der nächste Benutzer beim Locking eine Fehlermeldung: <pre>FATAL: '.jameica/jverein/h2db/jverein.h2.db' locked by 'rohieb' since Sun Apr 23 17:23:46 2017</pre> In diesem Fall den entsprechenden Benutzer treten, oder dem [[Schatzmeister]] Bescheid sagen, um das Lock per Admin-Zugriff zu überschreiben. ([http://gitolite.com/gitolite/locking/index.html Relevante Doku dazu])
+
 ===Erweiterte Toollandschaft===
 Um das Jverein als zentrales Tool sind im Laufe der Zeit weitere Tools als Helfer entstanden:
 * [https://gitli.stratum0.org/stratum0/jverein-regressionstests jverein-regressionstests]
This page took 0.028262 seconds and 4 git commands to generate.