Mit ‘mercurial’ getaggte Artikel

Repositories aktualisiert

Donnerstag, 22. Dezember 2011

Die Weihnachtszeit habe ich mal wieder dafür genutzt die Repositories und den FBK zu aktualisieren. Es sind nun die aktuellen Bibliotheken meiner Seite inkludiert und der FBK läuft weiterhin.

Ziel des flexiblen Browsergamekerns ist es ein einfaches, schnell benutzbares Browsergame-Rahmenwerk zu schreiben und dieses unter einer OpenSource-Lizenz zu stellen.

Der FBK enthält einen Webserver, eine Datenbank auf Basis der Serialisierung oder von SQLite und zuletzt ebenfalls Spielroutinen, die ein vollständiges Spiel ermöglichen.

Zwei Spiele, die mit dem FBK geschrieben worden sind:

  1. http://www.anotherspacegame.de
  2. http://www.jungfrauenspiel.de

Das zweite Spiel enthält spezielle Spiellogik, die ich nicht veröffentlicht habe.

Download

Der FBK und das Spiel ‘Another Spacegame’ ist einfach zu beziehen unter:

https://www.depon.net/downloads/fbk.zip

Der Quellcode ist mit folgendem Befehl zu beziehen:

hg clone -b BitBucket https://bitbucket.org/mbrenn/another-spacegame-public

Das Visualstudio-Projekt ‘src/FBK.sln’ öffnen (auch unter Monodevelop oder Sharpdevelop möglich) und ‘FBK’ als Startprojekt einrichten.

Alternativ auch direkt über BitBucket.org selbst: http://bitbucket.org/mbrenn/another-spacegame-public.

Geteiltes Leid ist halbes Leid

Donnerstag, 10. März 2011

Den FBK habe ich nun in mehrere Unter-Repositories auch auf BitBucket unterteilt.

Aus dem vormals großem Modul: BurnSystems.FBK wurden folgende kleinere Module:

  1. BurnSystems.FBK: Enthält nur den Kern, der Plugins verbindet
  2. BurnSystems.FBK.MetaHosting: Enthält die Schnittstellen, die den FBK mit dem MetaHosting verbindet. Zum MetaHosting komme ich später noch einmal.
  3. BurnSystems.FBK.Modules: Allgemeine Sammelstelle für alle Arten von Plugins. Es kann sein, dass ich hier nochmals Unterteilungen fahren werde
  4. BurnSystems.FBK.Modules.Web: Webserver-Funktionalitäten

Leider habe ich spontan nicht herausgefunden wie man Repositories in Mercurial um die nicht mehr benötigten Dateien befreien kann.

Durchgeführt habe ich diesen Schritt durch das Klonen des alten Repositories BurnSystems.FBK in die vier Unterprojekte und dem nachfolgenden Löschen der jeweils nichtbenötigten Dateien. So blieb die gesamte History dieser erhalten. Der Nachteil ist die Größe des Repositories (momentan etwa 13 MB), das nun vervielfältigt worden ist.

Aber c’est ca… Speicher ist billig…

Zu finden unter http://bitbucket.org/mbrenn/another-spacegame-public.

Oder fertig kompiliert unter http://www.depon.net/downloads/fbk.zip

Status des Repositories im Prompt

Freitag, 02. April 2010

Wie langweilig ist schon c:\Projekte\FBK> im Prompt zu haben?

Ein Microsoft-Mitarbeiter hat ein kleines Powershell-Skript veröffentlicht, dass den aktuellen Status des Repositories im Prompt anzeigt:

hg b:default c:1 modified, 1 unknown>

Eine sehr nette Idee!

Aktuelle Changeset-ID eines hg-Repository herausfinden

Sonntag, 17. Januar 2010

In Powershell:

Get-ChangeSetId.ps1:

if ( $args.Count -eq 0 )
{
    Write-Host ( "No Repository given" );
}
else
{
    $repos = $args[0];
    hg -R "$repos" –debug tags | Select-String "tip" | % { $_ -match ":(.[0-9a-f])*" } | % { $Matches[0].Substring(1) }
}

Benutzung:

Get-ChangeSetId src\BurnSystems

Und um eine neue .hgsubstate-Datei aufzubauen:

dir * | % { "{1} src\{0}" -f $_.Name, (.\getchangesetid.ps1 $_) }

Das Resultat sollte dann einfach nachbearbeitet werden:

image

Bitbucket und die erste Basisbibliothek

Sonntag, 10. Januar 2010

Der FBK ist zwar auch unter der AGPL-Lizenz verfügbar, doch habe ich momentan das Problem, dass ich selbst nicht alle Änderungen des Quellcodes veröffentliche. Insbesondere seit dem Serverwechsel habe ich keine virtuelle Linux-Maschine mehr am Laufen über die ich das SVN-Repository verfügbar gemacht hatte.

Als Urheber des Produkts begehe ich dabei zwar nichts falsches, doch finde ich es schade.

Da ich seit etwa 2 Monaten auf Mercurial (hg) gewechselt bin, kann ich wesentlich flexibler handeln und muss nicht zwanghaft meinen Server nutzen, sondern kann andere Dienstleister nutzen um mein Repository zu veröffentlichen.

Nach einer kleinen Suche habe ich mich für BitBucket entschieden. In der kostenlosen Basisversionen kann ich beliebig viele Repositories anlegen (bis 150 MB) und diese freigeben.

Testweise habe ich den Quellcode meiner Basis-Bibliothek ‘BurnSystems.dll’ hochgeladen um mir das Angebot näher anzuschauen.

http://bitbucket.org/mbrenn/burnsystems/

Nach und nach werde ich die anderen FBK-Projekte dazupacken, so dass es per einfachem Pull möglich ist den gesamten Quellcode des FBK und des Spieles www.anotherspacegame.de herunterzuladen.

Was enthält BurnSystems.dll?

Dazu in einem späteren Blogpost…

Subrepositories in HG automatisch aktualisieren

Mittwoch, 11. November 2009

Ein Problem in HG ist, dass es nicht in der Lage ist alle Subrepos zu mit einem Befehl zu aktualisieren. Man hat in jedem Subrepos den hg update-Befehl auszuführen.

Mit folgendem cmd.exe-Befehl kann dieses Problem umgangen werden:

for /D %x IN (*) DO hg –R %x update

Damit wird für jedes Verzeichnis der “HG update”-Befehl durchgeführt.

Für die Suchmaschinen: “hg update recursive recursively”

Hintergründe zum for-Befehl: Runs a specified command for each file in a set of files.

Migration von Subversion auf Mercurial

Samstag, 31. Oktober 2009

Im Laufe dieses Wochenendes werde ich es endlich schaffen meine gesamten Projekte vom zentral-orientierten Subversion auf das dezentrale Mercurial (hg) zu migrieren. Eine besondere Herausforderung war die Auftrennung der gesamten Projekte in die jeweiligen Einzelprojekte.

In Subversion kann man einen gigantischen Baum aufbauen und die jeweiligen Projekte können an jedem beliebigen Ordner einen Checkout durchführen. Bei Mercurial kann man nur das gesamte Repository als Ganzes auschecken. Es ist daher nicht sinnvoll ein gigantisches Mercurial-Projekt aufzubauen.

Seit Mercurial 1.3 werden sogenannte Subrepositories unterstützt. Diese entsprechen im entferntem Sinne dem “svn:externals”. Durch eine hoffentlich geschickte Verschachtelung der Projekte, Applikationen und Bibliotheken ist es mir hoffentlich gelungen ein Gesamt-Repository so aufzubauen, das sowohl jedes einzelne Projekt, als auch jede einzelne Bibliothek ausgecheckt werden kann.

Der von mir konzipierte Leitfaden kann unter folgender Adresse heruntergeladen werden:

http://www.depon.net/temp/wechselaufmercurial.pdf

Erste Bugrunde für das Jungfrauenspiel

Sonntag, 20. September 2009

Soeben wurde die neue Version des Jungfrauenspiels hochgeladen. Diese enthält folgende Korrekturen:

  • 20.09.2009 [BUG]: Der Prinz ist bei genügend Jungfrauen glücklich.
  • 20.09.2009 [BUG]: Textverbesserungen aller Art
  • 20.09.2009 [BUG]: NullReferenceException bei Rangaktualisierung und fehlenden Rängen aktualisiert.
  • 20.09.2009 [SECURITY]: Allianzsystem
  • 20.09.2009 [BUG]: Allianzname in Kartenübersicht
  • 20.09.2009 [BUG]: Sortierung der Allianzen in der Bestenliste nun korrekt
  • 20.09.2009 [BUG]: Allianz wird in der Bestenliste angezeigt.
  • 20.09.2009 [DESIGN]: Dropdown bei Adressauswahl: Schwarze Schrift auf schwarzem Hintergrund
  • 20.09.2009 [BUG]: Rangpunkte kleiner als 0
  • 20.09.2009 [BUG]: Leere Spalte ‚Spieler‘ bei Bewerbungen
  • 20.09.2009 [BUG]: In der Shoutbox wird nun der Spielername angezeigt.
  • 20.09.2009 [RULES]: Bricht man eine Ausbildung ab, so werden die Frauen wieder rückgebucht.
  • 20.09.2009 [BUG]: Spielervervollständigungsdialog kann nun auch mit Spielernamen mit Html-Tags umgehen.

Insgesamt bin ich mit den ersten Tagen sehr zufrieden, ich habe über 50 Bug- und Korrekturmeldungen mittlerer bis hoher Qualität erhalten. Das in der Website integrierte Feedback-Fenster hat sich wie auch beim letzten Spiel wieder ausgezahlt.

In den nächsten Tagen werde ich den FBK und das JFS von Subversion auf Mercurial versuchen zu portieren. In dieser Zeit können keine weiteren Korrekturen erstellt werden, ich hoffe, dass ich das Wichtigste bis zu den ersten Kämpfen und Spionagen korrigiert habe.