Mercurial Problem



  • Hallo,

    bisher habe ich nur kleine Programme geschrieben und bin daher ohne Versionskontrolle ausgekommen. Jetzt möchte ich allerdings für ein aktuelles Projekt ein VCS benutzen und habe mich da für Mercurial entschieden.

    Wenn ich jetzt mein Repository initialisiert habe und Daten hinzufügen möchte (mittels hg add) bekomme ich immer den Fehler "abort: <Dateiname hier> not under root".
    Dabei spielt es keine Rolle wo sich die Datei befindet - also ob auf der gleichen Festplatte, in welchem Ordner, etc.

    Dieser Fehler wird anscheinend in der Datei mercurial/util.pyc und dort in der Funktion canonpath ausgelöst. Mit Python kenne ich mich zwar einigermaßen aus, aber ich habe echt keine Lust dort herumzupfuschen.

    Wie kann ich diesen Fehler beheben? Bei Google habe ich zu dem Problem nichts hilfreiches finden können, außer dass es anscheinend schon bekannt war und behoben wurde. Ich benutze übrigens die neuste Version von Mercurial.

    Zu guter letzt noch die Frage, ob Mercurial die richtige Wahl ist oder ob svn, git und wie sie alle heißen nicht doch besser sind.

    Danke im Voraus!
    Gruß,
    VCS



  • VCS schrieb:

    bisher habe ich nur kleine Programme geschrieben und bin daher ohne Versionskontrolle ausgekommen. Jetzt möchte ich allerdings für ein aktuelles Projekt ein VCS benutzen und habe mich da für Mercurial entschieden.

    Versionskontrolle ist auch für ganz winzige Programme sinnvoll. Gut dass Du damit anfängst, Deine Sachen unter Versionskontrolle zu stellen.

    Wenn ich jetzt mein Repository initialisiert habe und Daten hinzufügen möchte (mittels hg add) bekomme ich immer den Fehler "abort: <Dateiname hier> not under root".

    Kannst Du mal zeigen, was für Befehle Du ausführst, um das reproduzieren zu können?

    Klingt so, als wärst Du nicht im initialisierten Repo.

    Zu guter letzt noch die Frage, ob Mercurial die richtige Wahl ist oder ob svn, git und wie sie alle heißen nicht doch besser sind.

    Mercurial ist neben Git eines der modernsten Versionskontrollsysteme und auf alle Fälle eine gute Wahl, unabhängig, was hier vielleicht empfohlen werden wird. Gibt bei solchen Themen natürlich viele persönliche Vorlieben und Abneigungen, aber Mercurial ist ein ausgezeichnetes VCS.



  • Kannst Du mal zeigen, was für Befehle Du ausführst, um das reproduzieren zu können?

    Klingt so, als wärst Du nicht im initialisierten Repo.

    Okay. Im folgenden befinde ich mich im Verzeichnis C:\Users\F.
    Die Datei text.txt liegt auch in diesem Verzeichnis.

    > hg init my-test
    > cd my-test
    > hg add C:\Users\F\test.txt
    abort: C:\Users\F\test.txt not under root
    

    Das Repository wird mitsamt .hg Verzeichnis erstellt.

    Die restlichen Befehle scheinen zu funktionieren, zumindest kam ich durch dieses Tutorial problemlos durch.

    Mercurial ist neben Git eines der modernsten Versionskontrollsysteme und auf alle Fälle eine gute Wahl, unabhängig, was hier vielleicht empfohlen werden wird. Gibt bei solchen Themen natürlich viele persönliche Vorlieben und Abneigungen, aber Mercurial ist ein ausgezeichnetes VCS.

    Gut, da bin ich ja erstmal beruhigt.:)

    Gruß,
    VCS



  • VCS schrieb:

    > hg add C:\Users\F\test.txt
    abort: C:\Users\F\test.txt not under root
    

    Naja, das liegt ja auch nicht im Root. 🙂

    Wenn Du Zeugs in C:\users\f\ hinzufügen möchtest, dann mach mal folgendes:

    cd \users\f
    hg init
    hg add test.txt
    

    Wenn Du ein besseres Tutorial suchst, schau mal hier drüber, das dürfte recht nett sein: http://hginit.com/



  • nman schrieb:

    Wenn Du Zeugs in C:\users\f\ hinzufügen möchtest, dann mach mal folgendes:

    cd \users\f
    hg init
    hg add test.txt
    

    Erklärung: Das Repo wird direkt in einem Unterverzeichnis unmittelbar unterhalb Deines working directories angelegt. Um Daten unter Versionskontrolle zu halten, müssen sie in Deinem wd liegen, bevor Du den add-Schritt machst.



  • Ah, danke für die schnelle Hilfe - jetzt funktioniert's! Ich bin ohne weiter darüber nachzudenken davon ausgegangen, dass ich jede beliebige Datei hinzufügen kann.

    Wenn Du ein besseres Tutorial suchst, schau mal hier drüber, das dürfte recht nett sein: http://hginit.com/

    Danke, werde ich auf jeden Fall durchlesen.

    Gruß,
    VCS


Anmelden zum Antworten