"richtig" mit Subversion arbeiten!
am 19.09.2009 - 21:06 Uhr in
Hallo, ich würde gerne bei einem Drupal-Projekt mit Subversion arbeiten, da an diesem Projekt mehrere Leute beteiligt sind. Bisher läuft alles nur über FTP, was ein Chaos ist. Nun möchte ich wissen wie ich mit Subversion "richtig" arbeite.
Mein größtes Problem ist, dass Drupal selbstständig Datein anlegt (Avatare, Useruploads, Themecache,...). Das zweite Problem ist die Datenbank: Ich will ja in meiner Testumgebung nicht immer die komplette Datenbank updaten müssen.
Wie löst ihr dieses Problem? Was ist alles auf eurem Heimrechner, Testserver und Webserver in Bezug auf folgendes:
- Drupal Dateien
- selbst erstellte Modul-Dateien
- eigenes Theme
- Datenbank (komplett ODER nur Struktur ODER Struktur mit wenigen Datensätzen ODER anders)
- Avatare, Useruploads, Cache usw.
- ...
Was davon wird mit Subversion versioniert?
- Anmelden oder Registrieren um Kommentare zu schreiben
Hatte dieses Problem selbst
am 20.09.2009 - 08:59 Uhr
Hatte dieses Problem selbst einmal. Also von einem sich im Live-Betrieb befindenden System würde ich abraten, wenn es wirklich so ist, das der User darauf schon arbeitet. Das wirst Du nie zufriedenstellend hinbekommen. Abegesehen davon ist ein Versionierungssystem auch zum Entwickeln gedacht.
Meines Erachtens macht es nur Sinn, die Sourcen dort zu versionieren, vielleicht noch die DB, aber Du wirst dort ja sowieso nur das halten, da heraus wird das System ja nicht laufen.
Dennoch kannst Du sehr viele Dinge automatisieren, dass das Arbeiten sehr erleichtert wird. Es hindert Dich ja auch keiner dran die DB automatisch hin und her zu schieben.
Such dir dann ein gutes Deployment-Tool und gut.
Doch die einzelnen Entwickler sollten immer eine lokale Entwicklungsumgebung haben und sich aus dem SV abgleichen!
-------------------
gruss
drupalino
gruss
drupalino
Danke für deine Antwort.
am 20.09.2009 - 10:40 Uhr
Danke für deine Antwort. Diesen Live-Betrieb haben wir momentan... Das ist Mist! Deshalb dieses Thema. Also, wir sind 3-5 Programmierer die jedoch in ganz Deutschland verstreut sind. Mit einer lokalen Entwicklungsumgebung meinst du also z.B. XAMPP das jeder auf seinem Rechner installiert hat, oder?
Ein Repository hab ich auch schon angelegt. Was soll da alles rein?
- Der komplette Drupal Ordner ORDER nur der Ordner "sites" ODER nur der Ordner "sites/all" ODER nur der Ordner "sites/all/modules"?
- Die komplette Datenbank ODER nur die Struktur ODER die Struktur mit wenigen Datensätzen??
Aber was passiert nun mit diesen Dateien die von Drupal selbst erstellt werden??? Die werden ja zwangsläufig auch ins Repository aufgenommen, wenn ein Entwickler seine Umgebung hochläd.
Also wenn Du zuviel zulässt
am 20.09.2009 - 10:23 Uhr
Also wenn Du zuviel zulässt wirst Du zwangsläufig in "Teufels Küche" Kommen.
Das kommt ganz drauf an wie Du das möchtest und wie sehr Due die entwickler zur Disziplin anhalten kannst. Drupal legt ja nur Dateien an, wenn der User etwas macht, aber diese brauchst Du ja nicht, daran wirst Du ja nichts machen.
In der Regel ist es ja so, dass an den Sourcen in Deinem Theme gearbeitet wird, oder was machen diese Entwickler an dem system?
-------------------
gruss
drupalino
gruss
drupalino
Also die Entwickler sollen
am 20.09.2009 - 10:39 Uhr
Also die Entwickler sollen am Theme und an neuen Modulen arbeiten. Wird alles was Drupal automatisch anlegt NUR im Ordner "sites/default" abgelegt? Oder auch teilweise in den Modulen oder woanders??
Definiere erst mal ganz
am 20.09.2009 - 10:55 Uhr
Definiere erst mal ganz genau was Du damit meinst, was Drupal selbst anlegt?
-------------------
gruss
drupalino
gruss
drupalino
Hab ich doch direkt im
am 20.09.2009 - 11:02 Uhr
Hab ich doch direkt im ersten Beitrag geschrieben:
Avatare, Useruploads, Themecache,...
Also alles was ich nicht von Hand per FTP uploaden würde! Liegen all diese Dateien nur im Ordner "sites/default"??
ja im files Ordner, werden
am 20.09.2009 - 11:54 Uhr
ja im files Ordner, werden Dateien abgespeichert durch Uploads oder ähnliche Vorgänge.
----------------------------------------
http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.
Tobias Bähr schrieb ja im
am 20.09.2009 - 12:31 Uhr
ja im files Ordner, werden Dateien abgespeichert durch Uploads oder ähnliche Vorgänge.
Nur dort? Also alle Module speichern (wenn sie Dateien anlegen sollten) immer nur dort? Wie sieht es mit dem cache aus? Wo wird der gespeichert?
Und dann ist da noch die Frage mit der Datenbank. Was sollte die Datenbank die sich die Entwickler vor Arbeitsbeginn downloaden beinhalten??
- die komplette Datenbank (das wäre bei extrem vielen Nodes/Forenbeiträgen immer langwierig)
- nur die Struktur
- die Struktur mit wenigen Datensätzen
Wie macht ihr das?
Zitat: Wie sieht es mit dem
am 20.09.2009 - 12:46 Uhr
Wie sieht es mit dem cache aus? Wo wird der gespeichert?
also schau dir bitte nochmal Subversion an, meinetwegen auch CVS, aber diese Frage lässt ein bischen vermuten, dass Du Dich nicht ausgiebig damit befasst hast.
warum sollte denn der Cache versioniert werden?????
-------------------
gruss
drupalino
gruss
drupalino
Er meint den Drupal Cache.
am 20.09.2009 - 12:47 Uhr
Er meint den Drupal Cache. Dennoch hast du Recht - so besonders tief scheint er sich mit Drupal nicht auseinandergesetzt zu haben.
--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!
webseiter.de
Suchmaschinenoptimierung (SEO) & Drupal
Ja, das haba ich verstanden,
am 20.09.2009 - 12:52 Uhr
Ja, das haba ich verstanden, dass er den meint. Aber das bringt ja nichts.
Erstmal sollte er sich klar machen wie man im Team entwickelt und dann mal genau nachsehen was Subversion ist und was es eben nicht ist und dann wie Du es auch grade schreibst, genauso noch etwas tiefer in Drupal gehen, dann wird sehr schnell klar was ich im Repository haben muss/kann/sollte und was eben Sinn oder Unsinn macht.
-------------------
gruss
drupalino
gruss
drupalino
Ja, ich meine mit Cache alle
am 20.09.2009 - 12:58 Uhr
Ja, ich meine mit Cache alle Daten die Drupal bzw. die Module anlegen (nicht was User uploaden, oder ich per FTP uploade). Z.B. wenn ich beim Garland-Theme mit diesem Color-Scheme-Kreis eine andere Farbpalette einstelle, speichert er das in "sites/default/files/color".
Ich weiß auch, dass es in der Datenbank die ganzen cache-Tabellen gibt. Deswegen zielte meine zweite Frage auch auf die Datebank ab!
Ja, aber das mit der
am 20.09.2009 - 13:06 Uhr
Ja, aber das mit der Datenbank hatten wir ja oben schon mal.
Also wie soll das laufen?
Entwickler A schraubt an seiner lokalen Konfig rum und dann? dann müsste er einen Dump machen und ins reposi senden, aber erst wenn Entwickler B auch versuch das zu machen würde er eine Info bekommen, dass es Differenzen gibt. Das kannst Du also nicht machen.
Du kannst nur an den Sourcen via Subversion entwickeln, dann würden die Entwickler darüber informiert, dass ein anderer Entwickler auch in den entsprechenden Sourcen wr.
UND DANN liegt der ganze Kram im Reposi und muss dennoch dann immer noch deployed werden.
Nochmal die Bitte zu beschreiben welcher Entwickler ws in Deinem Team macht und ws nicht, sonst können wir dieses Spiel hier und den Thread bis zum St. Nimmerleinstag weiterführen und Du hast immer noch keine Lösung oder klre Aussage ob es geht oder nicht.
-------------------
gruss
drupalino
gruss
drupalino
Sorry, mein a klemmt wohl
am 20.09.2009 - 13:07 Uhr
Sorry, mein a klemmt wohl ;-)
-------------------
gruss
drupalino
gruss
drupalino
Ok. Also wir sind momentan 3
am 20.09.2009 - 13:37 Uhr
Ok. Also wir sind momentan 3 Programmierer die sich um die Entwicklung von neuen Modulen, das Theming und die Konfiguration von Drupal (als Admin auf der Webpage) kümmern. In Zukunft bekommen wir wahrscheinlich noch Verstärkung: erstmal jemanden der sich nur mit Theming befasst aber später evtl. noch reine Modul-Entwickler.
Ich wollte einfach nur mal hören, wie ihr sowas am Besten organisieren würdet. Was würdet ihr dem Team für downloads anbieten, damit diese zuhause arbeiten können? Was dürfen diese dann comitten? usw.
Du brauchst keine Downloads
am 20.09.2009 - 13:51 Uhr
Du brauchst keine Downloads anzubieten. Ein Entwickler ist wie ein guter Koch, er hat seine eigenen Messer.
Was du sicher gut brauchen kannst ist ein System um euch abzustimmen und zu kommunizieren. Ein Bug Tracking System wie Mantis, Jira oder dergleichen, in dem sich Entwickler, projektmanager, Tester, etc. tummeln.
Sinnvoll ist aber vor allem sich Entwickler zu suchen, die derartige Systeme kennen und gewohnt sind diese für verteilte Teamarbeit zu nutzen.
--
mortendk: everytime you use contemplate... Thor is striking down from above with his mighty hammer - crushing and killing a kitten!
webseiter.de
Suchmaschinenoptimierung (SEO) & Drupal
Entwicklerumgebung mit Subversion + Trac
am 04.01.2010 - 17:33 Uhr
Detailliert beschrieben in Leveraging Drupal: Getting Your Site Done Right
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren.
Gruß
Frank
Bitte Erledigtes im Betreff des ersten Postings als [gelöst] markieren. Danke!