Projektkopie anderen Namen geben

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
NoCee
Beiträge: 174
Registriert: Do 3. Mär 2011, 21:34
OS, Lazarus, FPC: WinXp/7/10 Opensuse13.2/Leap15.3 (L 2.2.0 FPC 3.2.2 )
CPU-Target: Intel 32/64Bit, ARM9
Wohnort: Ulm

Projektkopie anderen Namen geben

Beitrag von NoCee »

Hallo zusammen

nach dem ich mir ein Projekt fast zerschossen habe frag ich lieber mal ne dämliche Frage :oops:
Ich habe ein Projekt (MyProjekt1). Von dem aus will ich jetzt ein zweites Projekt (MyProjekt2) anlegen.
Das heißt MyProjekt1 soll wie es ist erhalten bleiben und MyProjekt2 wird in einem neuen Verzeichnis unter einem neuen Namen
angelegt. Quasi eine Projektkopie vom alten Projekt mit neuem Namen und Speicherort. Ich kriegs aber einfach nicht hin. :roll:
Unter "Datei speichern unter" speichert er mir nur die mainform.lfm und mainform.pas
Bei "Projekt speichern unter" bleibt die mainform im alten Projekt.

Das muß doch irgend wie gehen. In anderen Programmen wie Excel oder so kann ich mit "Datei speichern unter" z.B. eine Projektkopie als Backup mit anderem Namen anlegen.

Gibt's da nen Trick oder ein Häkchen wo ich setzen/rücksetzen muß oder muß ich da mehrere Schritte nacheinander machen?

Danke schon mal im Vorraus
Gruß
NoCee

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: Projektkopie anderen Namen geben

Beitrag von theo »

Warum kopierst du den ganzen Ordner nicht einfach mit Explorer o.ä. wo anders hin?

Sonst ginge wahrsch. auch Projekt -> Projekt veröffentlichen.

NoCee
Beiträge: 174
Registriert: Do 3. Mär 2011, 21:34
OS, Lazarus, FPC: WinXp/7/10 Opensuse13.2/Leap15.3 (L 2.2.0 FPC 3.2.2 )
CPU-Target: Intel 32/64Bit, ARM9
Wohnort: Ulm

Re: Projektkopie anderen Namen geben

Beitrag von NoCee »

Hallo theo,
soll ja kein Backup sein sondern ich will das alte Projekt als Grundlage verwenden weils ähnlich ist
und dann das neue unter neuem Namen weiter bearbeiten bzw. ändern.
Veröffentlichen hab ich auch schon angeschaut, aber da kann ich den Projektnamen nicht ändern.

Gruß
NoCee

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: Projektkopie anderen Namen geben

Beitrag von theo »

Du hast Probleme... :roll:
Dann kopier's halt und mach dann "Projekt speichern unter..".

NoCee
Beiträge: 174
Registriert: Do 3. Mär 2011, 21:34
OS, Lazarus, FPC: WinXp/7/10 Opensuse13.2/Leap15.3 (L 2.2.0 FPC 3.2.2 )
CPU-Target: Intel 32/64Bit, ARM9
Wohnort: Ulm

Re: Projektkopie anderen Namen geben

Beitrag von NoCee »

klar hab ich Probleme
Anfänger=> Anfängerprobleme
Einstein hatte auch Probleme. An deren Lösung hat der teilweise mehrere Jahre gearbeitet :)

Ich hab halt gedacht, daß Lazarus das in einem Rutsch komplett mit neuem Namen übertragen kann.

Wie theo meint kopieren und "speichern unter" geht nicht mit einem Schritt.
Ein möglicher Weg der das tut was ich wollte:
Verzeichnis kopieren und umbenennen, mit Lazarus das Projekt im neuen Verzeichnis öffnen,
"Projekt speichern unter" mit neuem Namen speichern, "Datei speichern unter" und beim speichern die Dateien ersetzen
und zum Schluß noch die alten Dateien (mit dem alten Namen) rauslöschen. Danach hat Lazarus alles passend umgestellt.

Den Unterschied zwischen "Datei speichern unter" und "Projekt speichern unter" hab ich noch nicht ganz geschnallt.
Das Lazarus da was unterschiedliches macht, hab ich beim Probieren ja gesehen, aber warum ist das so?
Die Entwickler haben sich dabei ja was dabei gedacht. Vielleicht hätte sich meine Frage gar nicht gestellt
wenn ich vorher hinter den Sinn gekommen wäre.

Einen schönen Tag wünsch ich noch
Grüße
NoCee

wp_xyz
Beiträge: 5153
Registriert: Fr 8. Apr 2011, 09:01

Re: Projektkopie anderen Namen geben

Beitrag von wp_xyz »

Ja, Ordner an den neuen Ort kopieren, evtl umbenennen, und die lpi-Datei am neuen Ort öffnen.

Das funktioniert, weil Lazarus alles intern mit relativen Pfaden speichert, wobei die Projektdatei der Ursprung der Pfadhierarchie ist. Wenn du das Projekt am neuen Ort öffnest, stimmen die Pfade immer noch. Wenn du per "Projekt speichern unter" die Projektdatei z.B. in einen anderen Ordner speicherst, dann passt Lazarus die Pfade aller benötigten Dateien an, so dass sie vom neuen Ort der lpi-Datei wieder richtig sind. Wenn du dagegen z.B. eine Unit per "Datei speichern unter" an einen anderen Ort speichert, dann werden lediglich die Einträge dieser Datei angepasst.

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: Projektkopie anderen Namen geben

Beitrag von theo »

NoCee hat geschrieben: Anfänger=> Anfängerprobleme
Das ist kein Anfängerproblem, das ist ein "wie-man-sich-anstellt" Problem. :wink:

ruewa
Beiträge: 153
Registriert: Sa 12. Apr 2014, 14:43

Re: Projektkopie anderen Namen geben

Beitrag von ruewa »

theo hat geschrieben:Das ist kein Anfängerproblem, das ist ein "wie-man-sich-anstellt" Problem. :wink:
Ob das jetzt nötig war, Theo?

Was ich mir tatsächlich wünschen würde, wäre ein Menüpunkt in der Lazarus-IDE, mit dem man den Stand eines Projekts auf Knopfdruck einfrieren und automatisch als Backup (schön wäre zudem: mit Versionskommentar) sichern und diesen Stand dann ebenso einfach wiederherstellen kann). Das wäre ganz nützlich, um Modifikationen auszuprobieren, bei denen nicht von vorneherein feststeht, ob sie eine Verbesserung darstellen (z.B. in Bezug auf Laufzeit) oder nicht, bzw. ob dieser neue Ansatz überhaupt funktioniert. Also eine einfache Lösung unterhalb des Aufwands für ein "richtiges" Versionskontrollsystem. Solche Backups immer wieder von Hand zu machen ist zwar keine große Sache, aber doch umständlicher als es sein müßte.

BTW: So etwas wie ein periodisches Autosave (alle paar Minuten wie z.B. bei LibreOffice) wäre vielleicht auch keine schlechte Idee, oder? (Manchmal kompiliert man nicht ständig, kürzlich erst hat mir ein halbsekündlicher Stromausfall die Arbeit von ein paar Stunden zerschossen...)

Gruß Rüdiger

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: Projektkopie anderen Namen geben

Beitrag von theo »

ruewa hat geschrieben:
theo hat geschrieben:Das ist kein Anfängerproblem, das ist ein "wie-man-sich-anstellt" Problem. :wink:
Ob das jetzt nötig war, Theo?
Du wieder.

Nötig wäre eine Entschuldigung von dir: http://www.lazarusforum.de/viewtopic.php?p=72547#p72547

Mathias
Beiträge: 6918
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Projektkopie anderen Namen geben

Beitrag von Mathias »

Was ich mir tatsächlich wünschen würde, wäre ein Menüpunkt in der Lazarus-IDE, mit dem man den Stand eines Projekts auf Knopfdruck einfrieren und automatisch als Backup
Wen ich etwas grösseres ändern will, kopiere ich rasch den Ordner mit den Lazarus-Daten, somit kann ich alles rückgängig machen. Oder noch besser, ich Zipe den ganzen Ordner.
BTW: So etwas wie ein periodisches Autosave (alle paar Minuten wie z.B. bei LibreOffice) wäre vielleicht auch keine schlechte Idee, oder? (Manchmal kompiliert man nicht ständig, kürzlich erst hat mir ein halbsekündlicher Stromausfall die Arbeit von ein paar Stunden zerschossen...)
Man könnte zwischendurch auf das Disketten-Symbol klicken, nur war das bei mir nie nötig, da ich sehr viel kompiliere und teste.

Was viel ärgerlicher war, in Delphi und Turbo-Pascal musste man die Save vor kompilieren Funktion manuell aktivieren.
Wen man das vergass, war die ganze Arbeit futsch, wen der PC abgestürzte. Das war unter DOS noch recht häufig, wen man systemnah programmierte.
Also eine einfache Lösung unterhalb des Aufwands für ein "richtiges" Versionskontrollsystem.
Ich dachte so etwas sei in Lazarus eingebaut.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

ruewa
Beiträge: 153
Registriert: Sa 12. Apr 2014, 14:43

Re: Projektkopie anderen Namen geben

Beitrag von ruewa »

Mathias hat geschrieben:Ich dachte so etwas sei in Lazarus eingebaut.
Wo? Vielleicht habe ich die Backup-Funktion der IDE einfach nicht richtig verstanden, aber damit konnte ich bisher nichts anfangen.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2816
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Projektkopie anderen Namen geben

Beitrag von m.fuchs »

ruewa hat geschrieben:Was ich mir tatsächlich wünschen würde, wäre ein Menüpunkt in der Lazarus-IDE, mit dem man den Stand eines Projekts auf Knopfdruck einfrieren und automatisch als Backup (schön wäre zudem: mit Versionskommentar) sichern und diesen Stand dann ebenso einfach wiederherstellen kann). Das wäre ganz nützlich, um Modifikationen auszuprobieren, bei denen nicht von vorneherein feststeht, ob sie eine Verbesserung darstellen (z.B. in Bezug auf Laufzeit) oder nicht, bzw. ob dieser neue Ansatz überhaupt funktioniert. Also eine einfache Lösung unterhalb des Aufwands für ein "richtiges" Versionskontrollsystem. Solche Backups immer wieder von Hand zu machen ist zwar keine große Sache, aber doch umständlicher als es sein müßte.
Hm, den Aufwand für das Versionskontrollsystem hast du doch nur einmal bei der Einrichtung. Und dafür dann alle Vorteile, die es bietet. Ich kann mir nur schwer vorstellen, wie ernsthafte Entwicklungsarbeit reibungslos OHNE Svn und Co. funktionieren soll.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

ruewa
Beiträge: 153
Registriert: Sa 12. Apr 2014, 14:43

Re: Projektkopie anderen Namen geben

Beitrag von ruewa »

m.fuchs hat geschrieben:Ich kann mir nur schwer vorstellen, wie ernsthafte Entwicklungsarbeit reibungslos OHNE Svn und Co. funktionieren soll.
Kann sein. Ich hatte das (für meine Bedürfnisse) bisher eher als "mit Kanonen auf Spatzen geschossen" angesehen, aber das mag auch eine Fehleinschätzung aus Unkenntnis sein. Allerdings ist Dein Blickwinkel als professioneller Softwareentwickler natürlich auch ein anderer, "Hobbyists" wie ich mit ihren überschaubaren Projekten sind vermutlich eher darauf aus, Komplexität zu begrenzen.

Ist aber vielleicht ein guter Anstoß, sich das mal genauer anzusehen.

Gruß Rüdiger

creed steiger
Beiträge: 958
Registriert: Mo 11. Sep 2006, 22:56

Re: Projektkopie anderen Namen geben

Beitrag von creed steiger »

Wie gesagt ist "Projekt speichern unter" ist eine möglich Lösung, vor dem Problem mit verschiedenen Versionen stand ich auch schon.
Allerdings ist es wirklich die Arbeit wert, sich ordentlich in einen Versionsverwaltung (svn,git etc.) einzuarbeiten.

Selbst als Hobbyprogrammierer erspart man sich einen ganzen Batzen Arbeit, mal davon abgesehen das eine "Ordnerlösung" einem später ganz gewaltig auf die Füße fällt und man sich ärgert es nicht von Anfang an ordentlich gemacht zuhaben.
Bei einzelnen Codezeile, Nebeneffekten, versteckten Bugs usw Files mit diff zu bearbeiten ist kein Spaß ;)

Hartgecodete (Ordner)Pfade, fehlende Plattformabstraktion als Stolpersteine fallen mir da spontan auch noch ein.

soerensen3
Beiträge: 104
Registriert: Fr 22. Jun 2012, 01:51
OS, Lazarus, FPC: Fedora-Linux 23 (Korora) Lazarus 1.6 FPC 3.0
CPU-Target: 64Bit
Wohnort: Bonn

Re: Projektkopie anderen Namen geben

Beitrag von soerensen3 »

Ich habe mich auch lange davor gescheut mich an versionsverwaltungen einzubauen. Dann musste ich das aber in einem Job machen und benutze es sei dem.
Ich benutze git und habe festgestellt, dass ich im Regelfall nur 4 Funktionen benutze:

Code: Alles auswählen

git add [Datei oder Pfad] 
um Daten hinzuzufügen (muss nur bei neuen Dateien gemacht werden, nicht bei veränderten)

Code: Alles auswählen

git commit -m "Kommentar" 
um ein neues Backup zu machen zu dem man später zurückkehren kann

Code: Alles auswählen

git push
Daten werden mit dem Server synchronisiert.

Ein Befehl ist auch noch nützlich wenn man sehen will was mit einem commit verändert werden würde, bzw. seit dem letzten commit verändert wurde:

Code: Alles auswählen

git status
Außerdem gibt es auch zumindest für windows haufenweiße grafische Tools, da kenn ich mich aber nicht so mit aus.
Kompliziert wird das ganze nur wenn man bei den oben beschrieben Schritten einen Fehler macht, dann findet man aber genug Hilfe im Internet. Beispielsweise wenn man an mehreren Rechnern arbeitet, sollte man vorher immer "git pull" machen. Etc.

Ein kostenloses repository, dass auch privat sein kann findet man z.B. bei bitbucket, da muss man so gut wie nichts einrichten. Ich weiß gar nicht ob man das unbedingt braucht, da git auch lokal das repository speichert, vielleicht ist das mit dem server eher ein bonus wenn man mit mehreren Rechnern arbeitet und unterwegs auf seinen code zugreifen will oder ein externes backup braucht.

Antworten