Ergebnis 1 bis 6 von 6

Thema: Umgang mit Git bei Modulverbesserungen

  1. #1
    Contao-Nutzer
    Registriert seit
    12.09.2012.
    Ort
    Gerlingen
    Beiträge
    39

    Gesicht zeigt die Zunge Umgang mit Git bei Modulverbesserungen

    Hallo zusammen,

    ich habe jetzt mehrfach festgestellt, dass Modulentwickler ihre Repositories oft ab dem "system"-Ordner starten. Das macht aber eine sinnvolle Integrierung in Contao zur Fehlerbehebung oder Erweiterung unmöglich. Denn ich müsste dann alle Contao Ordner in .gitignore eintragen und andere Module in der gleichen Contao-Installation könnte ich auch nicht aus ihren Repositories integrieren.
    Deshalb würde mich mal interessieren, wie ihr das macht? Kopiert Ihr dann immer die einzelnen Dateien aus dem Repository in Contao und wieder zurück??? Das wäre ja generell auch kein Problem, wenn wenigstens alle Dateien unter "system/modules" liegen würden. Aber einige Module kopieren ja auch Dateien nach "drivers" etc.

    Danke schon einmal für Eure Anregungen und Antworten.

    Grüße
    Thomas

    Edit: Habe eben festgestellt, dass ich im falschen Forum war. Kann bitte ein Moderator das Thema nach Entwicklerfragen verschieben!?
    Geändert von thohms (19.09.2012 um 05:31 Uhr)

  2. #2
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.559
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    [Moderation: Thema verschoben.]
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  3. #3
    Contao-Urgestein
    Registriert seit
    07.07.2009.
    Beiträge
    4.107

    Standard

    Wie schon in der PM geschrieben, manche Dateien gehören einfach nicht unter Modules. Und in diesem Fall arbeitet man doch mit Symlinks oder Alternativen.

  4. #4
    Contao-Nutzer Avatar von chibineko
    Registriert seit
    02.06.2011.
    Beiträge
    120
    Partner-ID
    6306

    Standard

    Unter Unix und co benutzte ich symbolische Links.

    Siehe: http://de.wikipedia.org/wiki/Ln_%28Unix%29
    oder http://de.wikipedia.org/wiki/Symboli...rkn%C3%BCpfung

    Das Ganze ist durchaus auch in Windows möglich. Allerdings benutzte ich es nicht da ich Unix Server habe.

  5. #5
    Contao-Nutzer
    Registriert seit
    12.09.2012.
    Ort
    Gerlingen
    Beiträge
    39

    Standard

    Danke Euch Beiden für den Schubser. Softlinks hatte ich in der Tat nicht dran gedacht. Allerdings kann ich mich erinnern, das mal unter Windows probiert zu haben und die Softlinks wurden dann allerdings nicht korrekt erkannt, da Windows hier ja die Dateierweiterung .lnk nutzt. Muss mal schauen, ob es eventuell mit Hardlinks funktioniert und gebe dann nochmal Rückmeldung.

  6. #6
    Contao-Nutzer
    Registriert seit
    12.09.2012.
    Ort
    Gerlingen
    Beiträge
    39

    HTML Gelöst!

    So, nach 3 Stunden versuchen und vermutlich ein paar grauen Haaren mehr, habe ich jetzt einen Weg gefunden und werde meine Erfahrungen hier mal dokumentieren, damit andere nicht den gleichen Ärger haben:

    Zunächst einmal habe ich nach etwas Recherchieren heraus gefunden, dass die Art der Softlinks, wie unter Linux, seit Vista auch in Windows unterstützt werden. Allerdings geht das nur über die Konsole mit dem Befehl mklink. Außerdem muss die Konsole als Administrator ausgeführt werden.
    Also habe ich mit den Befehlen mklink C:\Pfad\zu\Contao\datei C:\Pfad\zu\Repository\datei für Dateien und mklink /D C:\Pfad\zu\Contao\verzeichnis C:\Pfad\zu\Repository\verzeichnis meine Verknüpfungen erstellt. Das sah auch alles soweit ganz gut aus. Soweit! Nachdem ich die Änderungen in mein lokales Git Repository einspielen wollte, musste ich leider feststellen, dass Git für Windows (eventuell lag's auch an Tortoise - glaube ich aber nicht, hab's aber auch nicht getestet) mit dieser Art von Links nichts anfangen kann, da readlink() nicht unterstützt wird.
    Somit habe ich alle Verknüpfungen wieder gelöscht und die Lösung ist nun die Folgende:

    Für Dateien muss ein Hardlink und kein Softlink gesetzt werden. Für Ordner muss ein Junction Link erstellt werden.

    Beispiel (auszuführen in der Eingabeaufforderung, die als Administrator ausgeführt wurde):

    Für Dateien (der erste Eintrag ist die Verknüpfung, der zweite Eintrag das Original):
    Code:
    mklink /H C:\Pfad\zu\Contao\datei C:\Pfad\zu\Repository\datei
    Für Ordner:
    Code:
    mklink /D /J C:\Pfad\zu\Contao\verzeichnis C:\Pfad\zu\Repository\verzeichnis

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •