2017-03-02 3 views
1

Ich verwalte ein Projekt, in dem ich Patternlab verwende, um die Front-End-Stile und Komponenten zu verwalten, aber auch sein SCSS-Verzeichnis auf einem anderen Angular-Projekt, das die eigentliche Anwendung ist.Gemeinsame Nutzung von SCSS-Verzeichnis in Projekten

Beide sind Git Repos, also war mein erster Gedanke, Git Submodule zu verwenden, aber ein Git Novize zu sein, weiß ich nicht, ob das der beste Anwendungsfall ist. Ich habe auch über ein privates npm-Modul nachgedacht, bin mir aber nicht sicher, ob das auch stimmt.

Hat jemand die Erfahrung, ein gemeinsames, versionsgesteuertes SCSS-Verzeichnis über mehrere Projekte hinweg zu teilen?

Antwort

1

Wenn beide Projekte die gleiche Version des SCSS-Verzeichnisses haben, ist es in Ordnung Submodule zu verwenden. Aber normalerweise können wir das nicht sicherstellen. Submodul ist also keine gute Wahl für diese Situation.

Es ist besser SCSS Verzeichnis in einem einzigen Zweig zu verwalten (wir nennen SCSS Zweig hier), wenn das Projekt die neueste Version von SCSS benötigen, können Sie SCSS Niederlassung in master Zweig zusammenführen.

Angenommen, Sie möchten das SCSS-Verzeichnis von projectA für projektB freigeben, können Sie subtree verwenden, um SCSS Zweig für ProjectB hinzuzufügen. Detail wie unten Schritte (Es ist auch geeignet, auch Sie SCSS nicht separat verwalten sind):

  1. Für projectA, eine SCSS Zweig erstellen SCSS Verzeichnis separat zu verwalten/entwickeln (wenn Sie SCSS separat verwalten möchten).
  2. In ProjectB, fügen SCSS Zweig der projectA als Teilbaum:

git subtree add --prefix=SCSS/ <URL for projectA> SCSS

  1. Ändern/commit Änderungen für SCSS Ordner in ProjectB.
  2. Wenn Sie Änderungen für SCSS wollen auch für projectA verwendet, können Sie verwenden:

git subtree push --prefix=SCSS/ <URL for projectA> SCSS

  1. Wenn Sie die Änderungen von SCSS von projectA ziehen wollen in ProjectB, können Sie verwenden:

git subtree pull --prefix=SCSS/ < URL for projectA> SCSS

Verwandte Themen