Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Komponenten schnell umschalten (https://www.delphipraxis.net/195705-komponenten-schnell-umschalten.html)

ChrisE 19. Mär 2018 13:30

Komponenten schnell umschalten
 
Hallo,

wir haben verschiedene Komponenten (gekauft) im Einsatz. Diese werden in der IDE installiert und im Bibliothekspfad werden Teilweise (wenn vorhanden) die Sourcepfade mit angegeben.

Wenn wir jetzt in unserer Software zu einem Entwicklungsstand zurück müssen entsteht immer wieder das Problem mit den Komponenten und dieser Version die zu der Zeit der Hauptsoftware-Sourcen verwendet wurde. Von Hand ist es kein Problem die ganz Komponenten zurück zu sichern und zu installieren. Wir suchen aber nach einen einfacheren Weg.

Wie löst Ihr ein solches Problem?

Nochmals in Kurzfassung:
  • Umschalten zwischen zwei Source-Zweigen eines Projekts
  • Installierte Komponenten die Teilweise mit Sourcen / Teilweise nur mit Installer (ohne Sourcen) verfügbar sind
  • Sowohl die bpls als auch die Sourceverzeichnisse (Tools -> Optionen -> Delphi-Optionen -> Bibliothek -> Bibliothekspfad) müssen geändert werden
  • Das Umschalten sollte so einfach sein wie ein Projekt laden

Danke für Eure Hilfestellungen.

Gruß, Chris

jaenicke 19. Mär 2018 13:40

AW: Komponenten schnell umschalten
 
Wir kaufen fremde Komponenten grundsätzlich ausschließlich inklusive Quelltext, bauen diese Units in unsere Packages ein (größere Sammlungen behalten die eigenen Packages, dann werden diese ins Buildskript eingebaut) und checken alles mit ein inkl. Buildskript usw.
Wenn wir einen Stand auschecken, werfen wir danach nur kurz das Buildskript an und haben sofort alle Units und Komponenten in dieser Fassung vorliegen.

Im Bibliothekspfad liegt fast ausschließlich der Ausgabepfad mit den .dcu Dateien, aber als Grundregel niemals ein Verzeichnis mit Quelltexten. Dafür haben wir ja die kompilierten Versionen. Deshalb gibt es da auch nichts umzuschalten.

KodeZwerg 19. Mär 2018 14:02

AW: Komponenten schnell umschalten
 
Ich habe es noch nicht getestet aber hier ist ein Manager der sowas übernimmt. Vielleicht kannst Du Ihn ja testen und ein Feedback darüber geben?

jaenicke 19. Mär 2018 14:13

AW: Komponenten schnell umschalten
 
Sieht interessant aus... den versuche ich mal in unsere Buildskripte zu integrieren, damit die Installationsanleitung für die Kollegen kürzer wird...

KodeZwerg 19. Mär 2018 20:24

AW: Komponenten schnell umschalten
 
Freut mich das ich helfen konnte, über ein Feedback ob es die angesprochenen Themen vom TE erfüllt würde ich dankbar sein, vielleicht nimmt Daniel es ja als Lösung für sowas in der CodeLibrary auf.

ChrisE 19. Mär 2018 21:41

AW: Komponenten schnell umschalten
 
Hallo,

vielen Dank erstmal für das Feedback.

Ich merke an den Antworten, dass ich noch nicht weit genug gedacht habe. Der "James" ist sicher ne gute Sache und zeigt auch in die richtige Richtung.
Ich muss mir denke ich erstmal darüber klar werden, wie ich die Komponenten mit Archiviere bzw. zurück installieren will.
Das hängt ja dann auch an unterschiedlichen Pfaden für die BPLs die gesichert werden müssen und ggf. auch zurück gesichert werden müssen.
Build-Scripte sind sicher auch gut - aber es entstehen sofort wieder Fragen:
1. Wie mache ich sinnvoll welche und
2. Wie gehe ich mit "Nicht-Source"-Komponenten um.
3. Wo finde ich gute Praxisbeispiele dazu?

Ich danke Euch auf jeden Fall mal für die Ansätze, auch wenn es noch nicht die Lösung ist die brauche bzw. ich doch deutlich mehr Arbeit rein hängen muss als ich dachte.

Gruß, Chris

jaenicke 20. Mär 2018 04:12

AW: Komponenten schnell umschalten
 
Zitat:

Zitat von ChrisE (Beitrag 1396702)
1. Wie mache ich sinnvoll welche und
2. Wie gehe ich mit "Nicht-Source"-Komponenten um.

Seit msbuild benutzt werden kann, definiert man im Projekt in der Buildkonfiguration (normalerweise Release) alle Parameter und benutzt dann nur noch msbuild. Für ältere Versionen hatte ich mal ein Konsolentool dafür geschrieben als es das noch nicht gab.

Wir haben ein Package mit allen Units, das diese in das Ausgabeverzeichnis kompiliert. Dazu dann ein Package, das die ganzen Komponenten registriert und das in die IDE installiert wird.

Bernhard Geyer 20. Mär 2018 06:36

AW: Komponenten schnell umschalten
 
Zitat:

Zitat von ChrisE (Beitrag 1396702)
Ich muss mir denke ich erstmal darüber klar werden, wie ich die Komponenten mit Archiviere bzw. zurück installieren will.

Das wichtigste ist erstmal eine Quellcodeverwaltung wie git. Damit hast sich das Thema archivierung und rückspielen erledigt

Zitat:

Zitat von ChrisE (Beitrag 1396702)
Das hängt ja dann auch an unterschiedlichen Pfaden für die BPLs die gesichert werden müssen und ggf. auch zurück gesichert werden müssen.

Sorge dafür das du das nicht mehr benötigst. Seit Jahren ist festgelegt wohin die IDE ihre BPLs hinkompiliert.

Zitat:

Zitat von ChrisE (Beitrag 1396702)
2. Wie gehe ich mit "Nicht-Source"-Komponenten um.

Sorge dafür das du Quellcode bekommst. Nur DCUs zu haben ist ein No-Go in der professionellen SW-Entwicklung.

Zitat:

Zitat von ChrisE (Beitrag 1396702)
Ich danke Euch auf jeden Fall mal für die Ansätze, auch wenn es noch nicht die Lösung ist die brauche bzw. ich doch deutlich mehr Arbeit rein hängen muss als ich dachte.

Der initiale Aufwand ist groß, aber man spart sich dann mit jedem neuen Arbeitsplatz viel Zeit und Nerven.

jaenicke 20. Mär 2018 07:13

AW: Komponenten schnell umschalten
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1396727)
Der initiale Aufwand ist groß, aber man spart sich dann mit jedem neuen Arbeitsplatz viel Zeit und Nerven.

Ja, das stimmt, am Anfang hat es schon recht lange gedauert alles einzurichten und zu dokumentieren. Aber als die Anleitung einmal fertig war, waren Upgrades von Delphi dann plötzlich auch kein Problem mehr. Einfach die Packages für die neue Version anlegen, die Anleitung durchgehen, ggf. Anpassungen vornehmen und schon konnten mit den Änderungen alle anderen schnell nach Anleitung upgraden. Und auch für mich ist die Anpassung für eine neue Version kein großer Aufwand, weil ich einen Leitfaden habe, dem ich folgen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr.

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