![]() |
Arbeiten im Team
Hi,
dieses Thema ist für mich absolutes Neuland, da ich bisher entweder immer nur allein an einem Projekt gearbeitet habe, oder es so war, dass ein Projekt in unterschiedliche Teilprojekt zerlegt wurde. Jetzt ergibt sich aber das Problem, dass verschiedene Programmierer, an verschiedenen Standorten zu verschiedenen Zeiten am gleichen Projekt arbeiten müssen. Daraus ergeben sich folgende Notwendigkeiten: - Der Quellcode muss irgendwo gehostet werden (hier würde sich ein eigener FTP-Server anbieten) - Wenn ein Programmiere arbeitet, oder mit der Arbeit beginnt, sollte er einen Hinweis erhalten, wenn andere bereits am Projekt arbeiten, oder mit der Arbeit beginnen - Änderungen im Quellcode sollte zusammenfließen. Heißt, wenn 2 Leute in der gleichen Datei Veränderungen vorgenommen haben, sollten beide Änderungen erhalten bleiben. (Sicherlich gibt es auch Konflikte, die dann gelöst werden müssen) - Man sollte eine Datei "sperren" können, so dass andere sehen können, dass an dieser Datei gerade umfangreiche Änderungen vorgenommen werden. - Und das wichtigste, das ganze sollte sich in Delphi (am besten XE7) integrieren lassen Möglicherweise würden wir uns dafür auch was eigenes Programmieren, aber ich denke es müsste dafür doch schon gute, intelligente Lösungen geben (die auch bedienbar sind). Wäre auch schön wenn's dann nicht soviel kostet. Bitte nicht gleich steinigen, wie gesagt, das ist für mich Neuland (So wie das Internet für unsere Bundeskanzlerin) und ich habe noch keine genauen Vorstellungen, wie ich das am Besten löse und welche Problem ich damit noch bekomme. |
AW: Arbeiten im Team
Da würde sich die Einrichtung eines zentralen SVN Servers anbieten.
|
AW: Arbeiten im Team
Ja, aber welchen sollte man sich genauer anschauen?
Gibt es irgendwo deutschsprachige Anleitungen, wie man das in Delphi integrieren kann (oder läuft sowas immer außerhalb der IDE ab), und welche Möglichkeiten man alles hat (bezogen auf meine Punkte im ersten post)? |
AW: Arbeiten im Team
|
AW: Arbeiten im Team
Kennt jemand VisualSVN? Taugt das was? Kann ich dass direkt mit Delphi-Versionskontrollsystem verwenden, oder benötigt man dazu noch einen SVN-Client oder irgendwas für die IDE?
|
AW: Arbeiten im Team
Hast Du noch nie mit Versionskontrollsystemen (SVN, Git,...) gearbeitet? Wie schaut das in deinem Team aus? Gibt es da welche die schon mit einem System gearbeitet haben?
VisualSVN habe ich noch nie benutzt, die SVN-Integration in Delphi bisher nur sehr wenig, bisher habe ich ![]() zu den restlichen Punkten: Vergiss deinen ftp-Server wieder ganz schnell. Zitat:
![]() Grüße |
AW: Arbeiten im Team
VisualSVN ist eine SVN Server und sollte daher direkt aus der IDE ansprechbar sein.
|
AW: Arbeiten im Team
Bevor das hier ausartet: SVN würde ich eben nicht empfehlen. Versuch es mit einem der modernen verteilten VCS, also sowas wie mercurial oder git. Gerade in Teams, wo eventuell gleichzeitig an den gleichen Units gearbeitet wird spielen die DVCS ihre Stärken locker flockig aus. Zur Vertiefung kannst Du hier im Forum schon nach entsprechenden Threads bezüglich Einführung in mercurial oder git suchen.
Sherlock |
AW: Arbeiten im Team
Hab auch keine guten Erfahrungen mit SVN, besonders wenn ein Teilnehmer nicht richtig breitbandmäßig unterwegs ist bzw. das Repo sehr groß wird. (Ergibt korrupte Repo DB, blöd)
("sehr groß" bedeutet leider auch, dass SVN (oder andere) gern mal für nicht-source-code genutzt wird, dafür sind die Tools nicht gemacht) Lieber git. Geht notfalls nackig per Command line oder auch mit Oberfläche (die können dann kosten). Für Tickets >Trac, das kann >git integrieren mit Commit Historie, Diff usw. Für Chat >openfire und >Pidgin oder so. Ein Chat ist praktisch, wenn man aus der Ferne ein Push/Pull, branch, .. abstimmen will. Bei kleinen Arbeitspaketen aber glaub ich gar nicht so dramatisch. (oder auch mal ein Stück Source Code, XML oder einen Bilderwitz rumschickt..) Eine AllinOne Lösung ist sicher praktisch, hab vor 2 Jahren noch etwas gebastelt, bis es wie gewünscht zusammen lief. |
AW: Arbeiten im Team
Moin!
War für mich auch Neuland. Ich mache es jetzt seit einiger Zeit so: Ich habe mir einen virtuellen Server gemietet (bei 1und1). Dort habe ich alle Zugänge gesperrt (ssh, ftp, web etc.pp.) und nur noch für das VPN-Netz freigegeben. D.h., wenn ich mit VPN mit dem Server verbunden bin, kann ich per ssh, web, etc. auf ihn zugreifen. Dort habe ich virtuelle Hosts angelegt, einen für GitLab (kostenfreier, offener Clone von GitHub (Versionsverwaltungssystem)). Dann pro WebProjekt einen eigenen virtuellen Host ( ![]() D.h., dass ich beim Programmieren mit VPN Verbunden bin um die aktuellen Quelltexte als lokale Arbeitskopie auszuchecken. Dann programmiere ich - egal ob Delphi oder Webprogrammierung. Für Web hab ich natürlich eine portable XAMPP-Installation, mit eigenen lokalen VHosts zum Testen. Während des Programmierens muss ich nicht mit dem Server per VPN verbunden sein. Nur dann, wenn ich mit mit der Arbeit (oder einem Teil) fertig bin. Dann "committe" und "pushe" ich die Änderungen an den GitLab-Server (virtuellen Server). Andere Programmierer können diese Daten wieder auschecken oder sie werden bei ihnen automatisch geladen. Je nachdem. Installiert werden muss auf dem virtuellen Server: Apache, MySQL, GitLab, GitLabShell etc., OpenVPN, RSync (zur Datensicherung). Das war's eigentlich schon. Der Server ist günstig zu haben, da nicht viele Ressourcen benötigt werden. GitLab dient auch gut als "Datensicherung" der Quelltexte. Nichtsdestotrotz solltest du die Daten über VPN nachts oder wann auch immer regelmäßig mit RSync mit einem PC in deinem Netzwerk synchronisieren. Ein Image des Servers wäre aber noch besser. Das machen aber die meisten Hoster schon ab Werk, je nach Vertrag. Bei meinen 7€-Vertrag habe ich eine automatische IMage-Sicherung dabei. Ich hoffe, ich konnte dir ein wenig helfen! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz