Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi-Projekte mit SCM (Subversion) verwalten (https://www.delphipraxis.net/118650-delphi-projekte-mit-scm-subversion-verwalten.html)

rakekniven 12. Aug 2008 09:31


Delphi-Projekte mit SCM (Subversion) verwalten
 
Hallo,

wir sind hier 10 Delphi-Entwickler und nutzen seit einiger Zeit Subversion zur Verwaltung unseres Quellcodes.
Als Client dient TortoiseSVN.
Das klappt alles wunderbar soweit.

Was uns jedoch stört:
Die cfg und dof-Dateien.
Man bekommt ständig Unterschiede aufgrund des Arbeitsplatzes und Arbeitsweise angezeigt. Die Ursache dafür ist, dass Delphi Einstellungen für die IDE und das Projekt in die gleichen Dateien packt.

Beispiel cfg:
Das Ausgabeverzeichnis -> -E Dies ändert sich beim Debuggen ständig.
Weiter haben wir deutsch / englische Windows-Installationen, daher sehen Schalter -LE und -LN anders aus.

Beispiel dof:
Hier gibt es die HistoryLists, RunParams die bei jedem User anders aussehen.
"RootDir" sieht auch hier aufgrund der Sprachunterschiede anders aus.

Die Beispiele könnte ich noch viel ausführlicher gestalten.

Was wir möchten?
Eine Trennung von Projekt und IDE-Einstellungen.
Die Compileschalter (Compilereinstellungen, Compiler-meldungen) und alle allgemeinen Informationen sollen im SVN gespeichert werden.
Einstellungen der IDE der nicht.
Kann man Einstellungen auslagern und via include o.ä. einbinden.

Wie macht Ihr das?
Welche Dateien verwaltet Ihr im SCM?
Was gibt es für Tricks?

Das Problem mit der Projekt.res-Datei haben schon gelöst und das Icon bzw. die Versionsinformation in RC-Dateien ausgelagert. Das klappt super in Verbindung mit SVN-Keywords. Link: http://svn.haxx.se/users/archive-2005-09/1048.shtml (link war falsch, nun korrigiert)

Gruß

mkinzler 12. Aug 2008 09:35

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Nimm noch die Endungen aus der Synchronisation raus

rakekniven 12. Aug 2008 09:45

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Endungen?
Wo rausnehmen?

Wir möchten schon alle wichtigen Daten in Subversion speichern.
Nur eben nicht die der IDE, welche von Arbeitsplatz zu Arbeitsplatz unterschiedlich sein können.

Die cfg und dof-Dateien komplett weglassen geht natürlich nicht, da stehen ja auch wichtige Parameter drin.

Gruß

rakekniven 1. Jul 2009 09:52

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Hallo,


ein ähnliches Problem haben wir nun mit Delphi 2007.

Durch verschiedene Programmierer und PCs entstehen verschiedene Pfäde für das Arbeitsverzeichnis (usw.), die in der *.dproj-Datei gespeichert werden, wodurch in Subversion Unterschiede erkannt werden, die gar keine sind oder bei ungültigen Pfadangaben gar nicht compiliert wird.
Das Problem dabei ist, dass die Compile-Schalter und -Konfigurationen auch im dproj-File hinterlegt sind, weshalb man nicht darauf verzichten kann, es in Subversion einzubinden.

Ist es daher möglich die Compilerfunktionen auszulagern?
MSBuild erzeugt laut der Delphi-Hilfe die dproj-Datei. Kann man da vielleicht eine Datei erzeugen lassen, die nur die Compileinfomationen und sonst nichts enthält?

Wie handhaben das andere, bei denen mehrer Entwickler an einem Proejekt arbeiten, da man nicht von gleicher Verzeichnisstruktur und Hardware ausgehen kann?

Gruß

deadcantdance 1. Jul 2009 09:57

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Wir haben das gleiche Problem mit den Delphi-Dateien, für einen Lösungsvorschlag wäre ich ebenfalls sehr dankbar :)

Sherlock 1. Jul 2009 10:13

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Was steht denn so wichtiges in den cfg und dof drin?

Wenn die nicht da sind, werden die beim nächsten Compile erzeugt und fertig ist der Lack. Ihr habt ja wohl hoffentlich einen gemeinsamen standard was Compilereinstellungen etc. betrifft.

Wir nutzen JediVCS und haben die dof und cfg von der Synchronisierung ausgenommen.

Edith sagt noch, daß man sich bei Einrichtung einer Versionsverwaltung natürlich auf eine gemeinsame Verzeichnisstruktur einigen sollte.

Sherlock

Uwe Raabe 1. Jul 2009 10:23

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Die CFG-Dateien kannst du getrost weglassen, die werden vor jedem Compilieren aus der IDE neu erzeugt. Die DOF-Dateien würde ich auch weglassen und das Problem mit den Compiler-Schaltern usw. mit einem dedizierten Build lösen (ich kann da FinalBuilder sehr empfehlen!). Das sorgt z.B. auch dafür, daß nicht versehentlich mal eine EXE mit Debug-Informationen raus geht.

rakekniven 1. Jul 2009 10:27

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Zitat:

Zitat von Sherlock
Was steht denn so wichtiges in den cfg und dof drin?

Wenn die nicht da sind, werden die beim nächsten Compile erzeugt und fertig ist der Lack. Ihr habt ja wohl hoffentlich einen gemeinsamen standard was Compilereinstellungen etc. betrifft.

Wenn diese neu erzeugt werden, muss Delphi die Werte ja irgendwo hernehmen.
Also woher? Delphi-Standard?

Wir haben einen gemeinsamen Compilerstandard, doch den möchten wir nicht in den IDE einstellen (da wird ja mal schnell was verstellt), sondern in Dateien, welche dann bei uns im SVN liegen.

Arbeitest Du mit SVN o.ä.?

Gruß

Uwe Raabe 1. Jul 2009 10:30

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Zitat:

Zitat von rakekniven
Wenn diese neu erzeugt werden, muss Delphi die Werte ja irgendwo hernehmen.
Also woher? Delphi-Standard?

Nein, die Werte in der CFG werden aus der DOF genommen.

rakekniven 1. Jul 2009 10:31

Re: Delphi-Projekte mit SCM (Subversion) verwalten
 
Zitat:

Zitat von Uwe Raabe
Die CFG-Dateien kannst du getrost weglassen, die werden vor jedem Compilieren aus der IDE neu erzeugt. Die DOF-Dateien würde ich auch weglassen und das Problem mit den Compiler-Schaltern usw. mit einem dedizierten Build lösen (ich kann da FinalBuilder sehr empfehlen!). Das sorgt z.B. auch dafür, daß nicht versehentlich mal eine EXE mit Debug-Informationen raus geht.

Das sollte doch auch mit Bordmitteln gehen.
In der dproj-Datei stehen ja auch die unterschiedlichen Build-Profile mit denen man das lösen kann.
Nur stehen in der dproj auch Infos, welche sich von PC zu PC ändern wie z.B. Pfadangaben bei deutsch-englischem Windows, andere Laufwerksbuchstaben usw...

Hoffe meine Frage war klar genug gestellt :?:

Gruß


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 Uhr.
Seite 1 von 2  1 2      

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