Netbeans 6.8 und Joomla Projekt

Alles was die PHP erweiterung von NetBeans betrifft

Moderator: wegus

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 08.06.2010, 16:47

Hallo,

ich würde für mein kommendes Projekt gerne eine Versionierung versuchen und habe hierzu Subversion eingerichtet, was prinzipiell auch alles inzwischen läuft.
Nur hab ich leider überhaupt keinen Plan wie ich da vorgehe.

Für Joomla! würde ich gerne eine Komponente entwickeln, für welche ich bereits jetzt die Funktionen der unterschiedlichen Versionen geplant habe.
Dafür habe ich auf meinem lokalen Webserver (OS = Kubuntu) eine separate Joomla-Installation angelegt.
Die Daten für den Administrator sind natürlich unter /administrator/componentes/com_xxx
Das Frontend ist in /components/com_xxx
und dann währen noch die Sprachfiles welche unter /language/de-DE liegen.

Sollte ich nun die komplette Joomla Installation in das Repository einbinden? Wie siehts mit der DB aus? Das MySQL Plugin hab ich inzwischen auch am Laufen und ich finds genial, endlich alles von einem Programm aus zu machen.

Wie sollte ich vorgehen mit der Versionierung speziell bei meinem Vorhaben?

MfG
5ky

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von wegus » 08.06.2010, 21:14

ich kenne den Aufbau von joomla nicht wirklich. Aber Du willst eine Komponente schreiben. Die willst Du verwalten und versionieren. Was wenn eine neue Joomla-Version herauskommt. Dann mußt Du ja auch das Joomla in Deinem Projekt updaten und das obwohl sich vielleicht an der Komponente nichts ändert. Ich würd das also schön separieren. Vorausgesetzt die innere Struktur von Joomla ist so sauber, dass man das auch separieren kann. Sprich:

- Eine Joomla-Installation auf einem Webserver
- Ein Projekt für die Komponente
- EIn Distributionsskript um die Komponente auf Deine Laufzeitumgebung zu installieren ( ant-Skript) aus Netbeans heraus.
- Ein Distributionsskript (auch ant) um Deine Komponente so zu verpacken wie man es mit joomla-Komponenten macht ( da gibt es ja immer individuelle Verfahren, bestimmt auch für joomla)
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 02.07.2010, 06:47

Morgen,

nun ist wieder etwas Zeit vergangen und ich glaube langsam wachse ich auch in das Thema Versionierung hinein. Dennoch habe ich leider immer noch die grundlegende Frage, wie ich mein Joomla Projekt am Besten anlege.

Ich habe:
- auf meinem lokalen Webserver die Joomla Installation aufgesetzt. "/var/www/joomla1/"
- diesen Ordner habe ich komplett als bestehendes PHP Projekt in Netbeans angelegt. (In Netbeans ist mir kein anderer Weg ein Projekt anzulegen bekannt, außer eben einen kompletten Ordner auszuwählen)
- ich habe den SVN-Befehl zum Erstellen eines Repositories durchgeführt und habe nun ein leeres Repository unter "/home/meinname/.repositories/joomla1/". Hier wurden mir automatisch die 3 "trunk", "branch" und "tag" Ordner angelegt.

Bisher konnte ich in Netbeans lediglich das komplette Projekt in ein "Repository importieren". Dies hat natürlich zur Folge, dass eben die komplette Installation inkl. den Netbeans Projektordner in der Versionierung drin ist, was eigentlich nicht so günstig ist.

Vor 2 Tagen konnte ich, aus welchem Grund auch immer, die Unterordner meines Projektes gehen, diese Markieren und über "Team-SVN-Ins Repository importieren". Dadurch konnte ich gezielt meine Ordner auswählen, welche ich Versionieren möchte. Da ich sämtliche .svn Ordner etc. wieder gelöscht habe, um es erneut sauber aufzusetzen ist mir jetzt aber diese Funktion grau, also inaktiv. Und ich schaffs absolut nicht mehr, gezielt Ordner ins Repository zu importieren.

Joomla besteht im Root aus ca. 10 Unterordnern. Für meine Entwicklung benötige ich:
A) /var/www/joomla1/administrator/components/meinekomponente
Hier sind alle PHP Daten und Unterordner für meine Komponente fürs Backend
B) /var/www/joomla1/components/meinekomponente
Hier sind alle PHP Daten und Unterordner für meine Komponente fürs Frontend
C) /var/www/joomla1/languages
Hier sind die notwendigen Sprachdateien

Ich hätte also gern aus Netbeans eine Versionierung, welche dann so oder ähnlich aussieht:
file://home/meinbenutzer/.repositories/joomla1/trunk/administrator/components/meinekomponente
file://home/meinbenutzer/.repositories/joomla1/trunk/components/meinekomponente
file://home/meinbenutzer/.repositories/joomla1/trunk/languages

Somit könnte ich Joomla selbst aktualisieren wie ich lustig bin, ohne dass er mir an der Versionierung was ändert. Hier ändert sich ja nur dann was, wenn ich an den Daten meiner Komponente arbeite.

Bisher hat mich Google & Co. völlig im Stich gelassen. Ich bekams zwar selbst schonmal hin aber wie und warum weiß ich heute nicht mehr. War sicher nur Zufall. Aus der obigen Struktur könnte ich somit den aktuellen Stand "exportieren" und hab sogut wie meine Installerstruktur fertig, welches ich dann nur noch packen müsste und die XML-Datei in den Root der Datei schieben müsste.

Währ klasse wenn mir jemand DEN Hinweis gibt, worans bei mir noch scheitert.

MfG
5ky

StephanK
Beiträge: 1
Registriert: 14.07.2010, 11:48

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von StephanK » 14.07.2010, 11:53

Hi 5ky,

versuche mich auch gerade an NetBeans und Joomla und wurde hier -> http://docs.joomla.org/NetBeans_overview fündig.
Evtl. hilft dir das ja auch ein bisschen weiter.

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 04.11.2010, 06:24

Morgen,

das Thema muss ich heute leider mal wieder auspacken.
Soweit klappt mit meiner Versionierung alles. Ich habe jetzt auch meine Änderungen an den Daten vorgenommen, welche ich benötige und alles Funktioniert.

Nun will ich aber genau diese Daten, welche bei mir nun die Revision 10 haben und auch in der Revisionsliste angezeigt werden, exportieren, um sie dann auf den richtigen Server zu laden.

Das hab ich bisher weder im KDESVN noch im Netbeans selbst geschafft. Wenn ich auf Exportieren gehe, kann ich leider die Revision nicht auswählen, welche ich exportieren will. Er exportiert mir immer ALLE Daten des Repository, statt nur die geänderten.

Kann mir hier evtl nochmal jemand helfen. Das währ absolut klasse wenn das Funktionieren würde.

MfG
5ky

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von arittner » 04.11.2010, 13:12

Moin!

Checkout -> Revision wählen, davon kann man m.E. ein Export machen.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 21.11.2010, 11:00

Morgen,

ich hab die Sache heute ausprobiert. Leider ohne Erfolg.
Auch mit dem Checkout hat er mir ALLE Daten ausgecheckt.

Ich glaub ich mach da grundlegend was falsch.

Wie gesagt ich möchte gerne mit Subversions meine Web-Entwicklungen von Joomla verwalten.
So gehe ging ich bisher vor:

1. Ich habe EIN Repository in meinem Benutzerverzeichnis angelegt, mit dem Name "Testrepository"
2. Ich habe in Netbeans meine verschiedenen Projekte eingebunden, welche ALLE mit existierenden Quellen angelegt wurde. Muss ich ja da ich zuerst mal das Joomla Installieren muss.
Die Projekte liegen alle unter /var/www (z.B. /var/www/projekt_1 ; /var/www/projekt_2 ; ...)
3. In der Netbeans Projektansicht auf der linken Seite wähle ich das erstellte Projekt mit einem Rechtsklick->Versionsverwaltung->Ins SVN-Repository importieren
4. Hier geb ich als Repostirorium URL den direkten Pfad zum Testrepository ein. "file:///home/5ky/repositories/testrepository"
5. Als Repositorium-Verzeichnis gebe ich "trunk/projekt_1" z.b. ein
6. Dann ermittelt er mir alle Daten des Projektes und ich kann sie importieren

Seh ich mir nun z.b. mit KDESVN dieses Testrepository an, habe ich meine 3 Ordner u.a. den TRUNK Ordner. In diesem sind nun auch die importierten Projekte gelistet.

So nebenbei... Es ist wohl ungünstig die verschiedenen Projekte in EIN Repository zu importieren oder? Ich denk ich sollt für jedes Projekt ein eigenes Repository anlegen?
Wenn ich nämlich nun an einem arbeite, die Änderungen Einpflege existiert ja ne neue Revision. Wenn ich DANN ein komplett neues Projekt einbinde, ist dessen Revision ja folglich wieder höher als die letzte Bearbeitete, welche eigentlich mit dem Neuen Projekt nichts mehr zu tun hat?

Gut ich mach als in Netbeans meine Änderungen und Spiel diese wieder zurück ins Repository. Die Revisionen werden mir ja natürlich angezeigt, welche Dateien verändert wurden. Allerdings möchte ich ja gerne AUSSCHLIEßLICH die geänderten Dateien nun zusammenfügen bzw. exportieren, dass ich sie auf den Server spielen kann. Da brauch ich nicht alle Dateien die Joomla so enthält und wenn ich auf dem Server hier und da Änderungen gemacht hab, währ das natürlich fatal, wenn nur wegen z.B. einer Templateänderung die anderen Änderungen überschrieben werden.

Was mir KDESVN auch oft anzeigt, dass es sich bei dem Trunk/Projekt_1 nicht um eine Arbeitskopie handelt?

Leider halfen mir bis heute die gefundenen Hilfen und Tutorials nicht recht weiter.

Vielleicht klappts ja doch noch. Die Hoffnung geb ich jedenfalls noch nicht auf. :D

MfG
5ky

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 30.11.2010, 08:36

Hey,

ich habe gestern mein Repositorium komplett gelöscht sowie alle .svn Ordner aus dem Webverzeichnis.
Will nun nochmal neu beginnen und wirklich für jedes Projekt im Webverzeichnis ein eigenes Repository anlegen. Denk das ist auch der Richtige Weg oder?

Die Repository anlegen werde ich mich KDESVN. Ansonsten würd ich gern alles über Netbeans machen.
Ist es denn richtig, wenn ichs überhaupt mal angelegt habe, dass ich die Daten dann ins SVN IMPORTIERE???

Wie währ der Richtige Weg, um evtl doch zu meinem Ziel zu kommen, dass ich dann beim Exportieren oder Auschecken bei neuen Revisionen wirklich NUR die geänderten Daten habe?

Würd mich super freuen wenn ich Dummerchen das endlich gebacken bekäme.

MfG
5ky

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 01.12.2010, 16:57

Ach menno.

Egal was ich wie auschecke, exportiere oder was auch immer. Ich bekomm das einfach nicht gebacken, das sich lediglich die geänderten Dateien einer Revision herausbringe. Er spielt mir immer ALLE Daten in den Auszucheckenden bzw. Exportierenden Ordner.

Ich kann mir zwar eine Liste herholen, welche Daten denn geändert wurden und diese manuell heraussuchen und dann auch in eine ZIP Datei packen bzw. auf den Server laden, aber das ist mehr als mühselig.

MfG
5ky

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von arittner » 02.12.2010, 08:16

JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 02.12.2010, 08:32

Hey,
vielen Dank für die Antwort. Dachte schon ich bin allein hier.
Der erste Link bringt mir, dass es sich um keine Arbeitskopie handelt. Den 2. Link mit Toroise SVN hatte ich schon gefunden, läuft nur leider unter Linux nicht und hier Arbeit ich ausschließlich.
MfG
5ky

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von arittner » 02.12.2010, 12:38

Moin!

Dann verstehe ich deine Anforderung nicht. Eine Arbeitskopie einer Revision kann nur eine vollständige Kopie+Versionierung sein. Ein Auszug aus einem Subversion kann nur ein Export (ohne Versionierung) sein. Der Grund ist einfach: Eine fehlende Datei in einer Arbeitskopie ist per Definition entweder eine lokale Löschung oder eine fehlende Datei. Lokale Löschung ist es, wenn lokal ein Hinweis im attic liegt (bei Subversion), sie fehlt wenn keinerlei Spuren der Datei lokal liegt.

Bei einer Löschung würde bei einer Arbeitskopie die Löschung versioniert werden. Bei Fehlen würde durch ein Update die Lücke in Deiner Arbeitskopie ausgefüllt werden. Ein Checkout ist aber ein Update in eine (leere Arbeitskopie -> also ein neuer Ordner). Ein Export ist nicht versioniert (was Du nicht willst).

Es geht nicht, dass Du nur den Versionierungs-Diff zwischen zwei Revisionen als versionierte Arbeitskopie hast. Also zumindest nicht mit Subversion.

TortoiseSVN würde das auch nur über einen Export lösen.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 02.12.2010, 12:42

ach so.
das heißt, es liegt grundsätzlich nicht an svn. das kann sowas weinfach von haus aus nicht.

und tortoisesvn bietet halt das als eigenständige programminterne lösung, welche ich mit meinen linux programmen hier halt einfach nicht habe.

währe dann ein anderes versionierunssystem besser geeignet? oder was würdet ihr mir empfehlen, wenn ich meine geänderten daten dann ohne langes suchen zusammenpacken möchte?

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von arittner » 02.12.2010, 12:49

Moin!

Was willst Du denn machen? Hab' doch immer eine vollständige Arbeitskopie zum entwickeln und erzeuge Dir bei Bedarf ein Export + AWK Extrakt für die geänderten Dateien die Du Dir dann zusammenpacken kannst.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

5ky
Beiträge: 31
Registriert: 08.06.2010, 16:41

Re: Netbeans 6.8 und Joomla Projekt

Beitrag von 5ky » 02.12.2010, 13:19

möglich dass ich extrem aufm schlauch sitz.

ich will eigentlich NUR die geänderten dateien in irgendeiner form herausbringen, z.b. in einen ordner exportieren welchen ich dann einfach auf den server schieb.
und das ganze ohne dass ich jedesmal eben ALLE dateien erhalte, da ich lediglich ~5% aller daten überhaupt ändere, eben nur jene, welche für dieses eine projekt relevant sind.

also hier meine vorgehensweise, wenn ich z.b. ein template für joomla erstellen möchte.

1. ich hol mir die neueste joomla version und pack sie in meinen webordner. da es eine lokale entwicklungsumgebung ist also z.b. in "/var/www/joomla_template_1"
2. drum herum leg ich natürlich die datenbank dafür an und durchlaufe den joomla eigenen installationsprozess
3. ich habe dann mein arbeitsverzeichnis "/var/www/joomla_template_1"
4. ich erstelle mit kdesvn mit den standard befehlen ein neues repository z.b. "joomla_template_1". kdesvn erstell mir automatisch die ordner z.b. trunk darin
5. ich erstelle in netbeans ein neues projekt mit vorhandenen quellen ("/var/www/joomla_template_1") und habe das dann in meiner projekteansicht
6. nun gehe ich mit rechtsklick auf dieses projekt -> team -> ins svn importieren und importiere all diese dateien in mein vorher erstelltes repository in den ordner trunk
7. es dauert ne weile und dann kann ich eigentlich loslegen.

8. meine eigentliche arbeit beginnt nun damit, dass ich in diesem verzeichnis im ordner "templates" nun einen eigenen ordner mit meinen dateien und unterordnern erstelle und damit arbeite.
mir wird auch angezeigt, dass die eben neu sind.
9. sobald ich fertig bin, kann ich das ganze projekt einreichen und geb meinen kommentar dazu ein. ich erhalte dann für diese neuen bzw. geänderten sachen eben eine neue revision.

ich hätte nun gerne genau diese dateien gerne in einem separaten z.b. "export" ordner, welchen ich dann z.b. per zip verschicken kann, oder ich lad eben dann genau diese dateien auf den richtigen server hoch.
ich bekomm aber genau diese dateien eben nicht heraus, sondern immer lediglich ALLE dateien des repository. klar könnte ich einfach diesen export hochladen, dauert halt um einiges länger und birgt natürlich die gefahr, wenn jemand in der zwischenzeit auf der richtigen seite änderungen gemacht hat, diese dann von mir wieder überschrieben werden. deshalb möchte ich ja nur MEINE geänderten dateien.

oder ich bin einfach zu doof für dieses thema. :roll:

Antworten