Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   Repository aufteilen GIT (https://www.delphipraxis.net/193225-repository-aufteilen-git.html)

jaenicke 10. Jul 2017 17:27

AW: Repository aufteilen GIT
 
Das ist wie TiGü schon vermutet hat in der Tat in Wirklichkeit der Bibliothekspfad.

Wir benutzen stattdessen den globalen Bibliothekspfad, in dem allerdings fast nur ein Pfad zusätzlich drin ist. Dorthin kompiliert das Komponenten/Unit-Buildskript alle Units und kopiert auch die notwendigen .inc Dateien usw. vorher dorthin.
Dadurch ging die Kompilierzeit auch herunter, weil nicht mehr an so vielen Stellen nach den Dateien gesucht werden muss.

freimatz 13. Jul 2017 12:02

AW: Repository aufteilen GIT
 
Zitat:

Zitat von himitsu (Beitrag 1376199)
Die DCUs sollten dann natürlich mit im GIT liegen
oder in einem externen branch-/versionsabhängigen Verzeichnis, damit beim Branchwechsel direkt die passenden DCUs vorhanden sind.

Nein, nie, niemals:!: das tut man nicht.
Wir haben hier im allgemeinen mehrere Ordner mit je einem working copy, so dass wir mehrere branches bearbeiten können. Diese Ordner werden mit subst auf einen Buchstaben gemappt. Ein Wechsel sind bei mir vier Klicks:
- Delphi beenden
- Zwei Tasten für Laufwerk ummappen
- Delphi starten
Wenn ihr wirklich das repo aufteilen wollt dann schaut mal git submodule an.

Sherlock 13. Jul 2017 12:28

AW: Repository aufteilen GIT
 
Zitat:

Zitat von freimatz (Beitrag 1376636)
Wenn ihr wirklich das repo aufteilen wollt dann schaut mal git submodule an.

Womit wir wieder bei meinem, genüßlich ignorierten, Vorschlag wären. ;)

Sherlock

freimatz 13. Jul 2017 17:07

AW: Repository aufteilen GIT
 
Ich habe den schon gesehen, dachte aber wegen "Subrepository (git Nomenklatur ist mir grad nicht geläufig)" schreib ich das nochmals explizit hin.

Sherlock 14. Jul 2017 08:12

AW: Repository aufteilen GIT
 
Zitat:

Zitat von freimatz (Beitrag 1376662)
Ich habe den schon gesehen, dachte aber wegen "Subrepository (git Nomenklatur ist mir grad nicht geläufig)" schreib ich das nochmals explizit hin.

Das sollte beileibe kein Vorwurf sein. Ich fand nur, daß der Thread etwas abhob und vom Thema abkam und mit Deinem Beitrag wieder gelandet ist ;)

Sherlock

DevLinus 19. Jul 2017 16:10

AW: Repository aufteilen GIT
 
Ich versuche jetzt gerade das Repository aufzuteilen. Nun folgendes Problem.
Ich habe ein neues Projekt erstellt damit ich die ganzen Suchpfade und so raus habe. Anschließend habe ich die Pfade wo die DCU Dateien liegen als Suchpfad eingefügt und die Units zum Projekt hinzugefügt. Jetzt bekomme ich leider für alle Units die Meldung "[dcc32 Fataler Fehler] UnitName.pas(54): F2051 Unit UnitName wurde mit einer unterschiedlichen Version von UnitName.TKlassenname compiliert". Die DCU's sind aber gerade vorher von mir erzeugt worden. Wenn ich dann den Pfad der Unit als Suchpfad hinzufüge meckert er für diese Natürlich nicht mehr. Aber die nächste Unit macht Probleme. Ich denke mal das wird solange weiter gehen bis ich wieder alle Suchpfade drin habe.

Hat jemand eine Idee was ich falsch mache?

jaenicke 19. Jul 2017 20:13

AW: Repository aufteilen GIT
 
Welche Units hast du zum Projekt hinzugefügt? Dort gehören nur die rein, die du nicht per .dcu einbinden willst.

DevLinus 20. Jul 2017 06:41

AW: Repository aufteilen GIT
 
Zitat:

Zitat von jaenicke (Beitrag 1377040)
Welche Units hast du zum Projekt hinzugefügt? Dort gehören nur die rein, die du nicht per .dcu einbinden willst.

Jetzt habe jetzt alle Units suchpfade wieder raus und nur noch die DCU suchpfade drin. Bekomme aber die Meldung das sie mit unterschiedlichen Versionen erstellt wurde. Die DCU's habe ich gerade aber mit den aktuellen Sourcen erstellt.

DevLinus 20. Jul 2017 06:54

AW: Repository aufteilen GIT
 
Ich schreibe nochmal was ich genau gemacht habe.
Ich habe das alte Projekt kompiliert. Anschließend eine DCU rausgelöscht. Die Unit zu der gelöschten DCU habe ich zu meinem Blanken Projekt hinzugefügt. Anschließend habe ich die Pfade der DCU's hinzugefügt. Nun bekomme ich die Meldung.
[dcc32 Fataler Fehler] UnitName.pas(8): F2051 Unit UnitName wurde mit einer unterschiedlichen Version von UnitName.Klassenname compiliert

jaenicke 20. Jul 2017 08:10

AW: Repository aufteilen GIT
 
Der Punkt ist, dass keine der nur in kompilierten Versionen vorliegenden Units eine Unit referenzieren darf, die du in Quelltextform eingebunden hast. Denn die als Quelltext eingebundene Unit kompilierst du ja mit dem Projekt dann neu, die nur kompiliert vorliegende Version aber nicht.

Daher ist dann die kompiliert vorliegende Version älter als die gerade neu kompilierte eingebundene Unit.
Und deshalb wurde die bereits vorkompilierte Unit mit einer anderen Version der nun neu kompilierten Unit kompiliert.

Deshalb haben wir auch zwischen gemeinsamen Units und Projektunits getrennt. Die Projektunits dürfen beide einbinden, die gemeinsamen Units nur andere gemeinsame Units. Alle gemeinsamen Units werden durch ein Package vorkompiliert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:38 Uhr.
Seite 3 von 4     123 4      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz