| | | | |
| |||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
| | LinkBack | Themen-Optionen | Thema bewerten |
| | |
| Erfahrener Benutzer Registriert seit: 27.09.2008
Beiträge: 316
PHP-Kenntnisse: Fortgeschritten ![]() | Hallo zusammen, ich arbeite des öfteren mit mehreren Personen an einer Webseite oder einem Script und sehe nun den Bedarf einer Versionsverwaltung. Ich habe mir nun die Funktionsweise von SVN, Git und Darcs angeschaut aber was mich zum verzweifeln bringt ist folgende Anforderung die Ich habe: Die aktuelle Version soll auch immer über einen Testserver aufrufbar sein. Ich habe überlegt das Repository Verzeichniss einfach unterhalb der Document Root des Webservers anzulegen, aber ist das eine schöne Lösung? Und was ist mit Änderungen an einer Datenbank an die das jeweilige Script angebunden ist? Am liebsten wäre mir eine Lösung die Änderungen an der Struktur der Datenbank erfasst und Änderungen in den Quelltexten. Wie geht Ihr denn vor wenn ihr im Team eine Website oder ein Script entwickelt? Eine Versionskontrolle ist doch eigentlich Pflicht? Ich wäre dankbar für Anregungen und Vorschläge. gruss moveax1
__________________ twitter.com/moveax1 || http://modxcms.com/ || http://ubuntuusers.de/ $live->free() OR die(); |
| | |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Moderator und Wett-König | Hallo, an sich ist SVN für zentrale Versionsverwaltungen IMHO das "non plus ultra". Um die aktuelle Version der Seite immer aufrufbar zu haben solltest du Versionsverwaltung und Deployment unterscheiden. Das bedeutet, dass die Versionsverwaltung alle Dateien (Code, Templates, Setup-Scripts, ...) beinhaltet und ein Deployment-Script dir die Vorschauversion auf Knopfdruck erstellt / updatet. Im einfachsten Fall ist das ein "svn co" oder ein "svn export", in komplexeren Fällen kann es auch ein "svn co + mysql xyz" sein. Letzteres musst du natürlich an deine Bedürfnisse anpassen. Wenn du schon eine fertige Lösung haben möchtest, schau mal auf der Maven- oder auch der Ant-Seite vorbei. Für PHP gibt es unter Maven - Welcome to Maven for PHP bereits einen angepassten Livecycle.
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| | |
| | |
| Moderator Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Ich hab eine Zeit lang SVN benutzt und nutze jetzt seit ein paar Monaten GIT (insbesondere seit ich komplett auf linux umgestiegen bin). Der Anfang ist wie ich finde etwas schwierieger als mit SVN zumindest ging es mir so, obwohl ich schon ein paar jahre mit SVN gewerkelt hab. Git ist zwar dezentral, aber das hindert einen ja nicht daran irgendwo für sich ein Hauptrepro zu machen in das der aktuelle stand immer "gepusht" wird. Ich hab auch auf meinem Root-Server ein Verzeichnis mit allen meinen Repros und dorthin pushe ich meine repros immer nach den commits wenn ich online bin. Sehr nett ist es halt durch den dezentralen Faktor, lokal branchen und commiten zu können den kram dann wieder irgendwann in seinen master-zweig (ähnlichem dem trunk in SVN) zu mergen und dann wieder commiten und dann wenn man online ist auf das haupt-repro zu pushen. Wenn man öfters offline arbeiten will oder muss wenn man unterwegs ist, ist es einfach herrlich sich trotzdem branches anlegen zu können, committen zu können und so. Was git auch sehr interessant macht, Kompression! Ich hab hier lokal nen Ordner den ich mit meinem Server synchronisiere um überall auf die gleichen Versionen von Komponenten, darin liegen diverse versionen des zend-frameworks, andere komponenten und frameworks, diverse versionen von dojo und anderen js-frameworks, css-frameworks und kram + manuals und so, das sind ~ 900 MB, komprimiert als tar.gz waren es noch 180 MB und als GIT-Repro waren es gerade mal 90 MB!! Also alles was ASCII und nicht binär ist wird sehr gut komprimiert, was auch den Traffic zu meinen Online-Hauptrepros sehr gering hält. Ausserdem hat man bei GIT durch das clonen auch immer Zugriff auf die komplette History! (dafür ist ein GIT-Repro wenn es schon älter ist halt auch trotz Kompression größer als ein einzelner checkout aus SVN) Ansonsten besteht bei GIT auch die Möglichkeit einen Mischbetrieb zu fahren. GIT bietet mit git-svn auch Zugriff auf SVN-Repros, damit kann man auf dem eigenen Rechner mit git arbeiten, branchen, committen und soweiter und irgendwann wenn man etwas abgeschlossen hat, macht man aus dem ganzen dann einen commit ans SVN.
__________________ robo47.net - Blog, Codeschnipsel und mehr | |
| | |
| | |
| Erfahrener Benutzer Registriert seit: 27.09.2008
Beiträge: 316
PHP-Kenntnisse: Fortgeschritten ![]() | Ich habe mir GIT und SVN angesehen und erstaunlicherweise finde ich GIT in der Einrichtung einfacher. Die Fertiglösungen die Dr. E. postete schaute ich mir an, ich glaube aber nicht das meine Arbeitskollegen Sie jemals verstehen werden. Ich denke ich werde auch mit GIT ein Repository anlegen, es spricht ja nichts dagegen das sich das Repository unterhalb der DocumentRoot des Webservers befindet. Danke für eure Antworten ![]() gruss moveax1
__________________ twitter.com/moveax1 || http://modxcms.com/ || http://ubuntuusers.de/ $live->free() OR die(); |
| | |
| | ||
| Moderator Registriert seit: 11.05.2008
Beiträge: 6.268
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Zitat:
Wenn das ganze läuft musst du dir nur ein kurzes Deploy-Script bauen, dass auf deinem Webserver ein update/checkout fährt. Du solltest allerdings einen Schritt nach dem anderen machen. | |
| | |
| | |
| Moderator Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse: Fortgeschritten ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | Hmm, was ist an GIT experimentel ? Es ist zwar im Vergleich zu SVN und CVS vielleicht "jung" aber das sind wohl die meisten verteilten Versionskontrollsystemen (Bazaar, Mercurial). Allerdings würde ich Bazaar, Mercurial und Git wohl alle als stable bezeichnen. @Mods Ich denke fast der Thread wäre woanders besser aufgehoben, hat imho nichts mit PHP zu tun
__________________ robo47.net - Blog, Codeschnipsel und mehr | Geändert von robo47 (02.01.2009 um 23:43 Uhr). |
| | |
| | ||
| Moderator Registriert seit: 11.05.2008
Beiträge: 6.268
![]() ![]() ![]() ![]() ![]() ![]() ![]() | Git – Wikipedia Zitat:
Das wär wie einem Programmieranfänger jetzt Ruby (on Rails) zu empfehlen. Meine Meinung | |
| | |
| | |
| Neuer Benutzer Registriert seit: 30.01.2009
Beiträge: 1
![]() | Hallo, im svn gibt es sogennante hooks mit denen können Aktionen vor und/oder nach einem commit ausgelöst werden. Ich habe für diese Problem was Du oben beschreibst eine post-commit.bat geschrieben die automatisch den webserver checkout updatet. Code: ::
:: Immer vollen Pfad setzen da commits sonst nicht laufen
::
:: CALL update.bat %1 %2 ::usw. fuer auslösen weiterer jobs
::
SET REPOS=%1
SET REV=%2
SET SVN_DIR=D:\svn\bin
SET SVN=%SVN_DIR%\svn.exe
SET UPDATE_DIR2=D:\workspace\projektxyz
SET HOOK_DIR=D:\svn\Archiv\hooks
SET LOGFILE=%HOOK_DIR%\post-commit.log
::-----------------------------
:: Test -->
::For /F "tokens=1" %%i in ('%SVN_DIR%\svnlook author -r %REV% %REPOS%') Do @Set AUTHOR=%%i
::
echo %date% - %time% - %1 (Rev. %2) >> %LOGFILE%
::%SVN% update %UPDATE_DIR% >> %LOGFILE%
%SVN% update %UPDATE_DIR2% >> %LOGFILE%
MfG eXo |
| | |
| | ||
| Moderator und Wett-König | Zitat:
__________________ Viele Grüße, Dr.E. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Think about software design before you start to write code! 2. Discuss and review it together with experts! 3. Choose good tools (-> Adventure PHP Framework (APF))! 4. Write clean and reusable software only! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
| | |
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| für privat: PHP Entwicklung in Indien ? | mrmojo | Off-Topic Diskussionen | 5 | 23.11.2008 18:38 |
| Projekt sucht für Teilbereiche Schüler o.ä. für PHP OOP Entwicklung gegen Bezahlung | mrmojo | Beitragsarchiv | 0 | 20.11.2008 23:41 |
| Literatur zur Entwicklung von Enterprise Projekten gesucht | Nadir | PHP-Fortgeschrittene | 20 | 18.06.2008 21:46 |
| Gemeinsame Entwicklung: ServerOS im Script auslesen | HStev | PHP Tipps 2008 | 3 | 28.08.2007 12:25 |
| WEB Entwicklung & mehrere Programmierer | Server, Hosting und Workstations | 6 | 02.12.2006 22:48 | |
| "Die virtuelle Welt" sucht Programmierer | Beitragsarchiv | 12 | 08.12.2005 09:49 | |
| Suche Partner zur Entwicklung eines Portals | Beitragsarchiv | 3 | 03.04.2005 19:05 | |
| [Erledigt] Schnittstelle Entwicklung | PHP-Fortgeschrittene | 5 | 04.11.2004 18:02 | |
| Negative entwicklung | Off-Topic Diskussionen | 196 | 24.10.2004 19:33 | |
| Coder für Entwicklung eines Online Fussball Managers | Beitragsarchiv | 16 | 20.09.2004 10:46 | |
| Macht Entwicklung phpGTK Sinn? | PHP Tipps 2004 | 9 | 24.06.2004 09:25 | |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| php versionskontrolle, versionskontrolle php, svn \ist nicht unter versionskontrolle\, php versionskontrollsystem, versionskontrolle auf webserver, programmieranfänger \ruby on rails\, versionskontrolle für php, git php projekte, php entwickler versionskontorlle, versionskontrollsystem php, git php maven, einfache versionskontrolle php, bazaar deutsch versionsverwaltung, deutsche version bazaar versionsverwaltung, bazaar versionskontrolle forum, svn commit \ist nicht unter versionskontrolle\, svn merge \ist nicht unter versionskontrolle\, php projekt versionskontrolle, \ist nicht unter versionskontrolle\, versionskontrolle php projekt |