[Git] Macht in diesem Fall Git Sinn

Gajel

Banned
Registriert
Mai 2010
Beiträge
1.146
Folgende Situation. Wir betreiben einen Online-Shop mit folgendem Setup:

2x Root Server (Linux) mit einer Failover-IP. Auf einem Server läuft der Live-Shop und auf den anderem Server läuft der Backup-Shop. Zusätzlich haben wir einen lokalen Dev-Server für Entwicklungen bevor die Sachen dann live gehen. Der Live-Shop/Server synchronisiert sich automatisiert mit dem Backup-Shop/Server, damit der Backup-Shop immer einen aktuellen Stand hat, so dass der Betrieb bei einem Ausfall bzw. Wechsel auf den Buback-Shop reibungslos weiter gehen kann. Soweit läuft alles tip-top.

Nun stehen wir kurz vor einem Wechsel auf ein neues Shopsystem (Oxid 6) das (nur noch) über composer läuft. Jetzt wird mir mit von einigen Seiten geraten das Ganze mit Git anzugehen. Ich bin "absoluter" Git Neuling und habe mich mal soweit in das Thema eingelesen das ich den Sinn dahinter verstehe und wie es funktioniert.

Resultierend daraus stellt sich mir die Frage ob es wirklich Sinn macht hier auf Git zu setzen, da ich die einzige Person bin die an dem Shop entwickelt und arbeitet. Es ist aber nicht auszuschließen das in Ausnahmefällen externe Dienstleister unterstützend für Entwicklungen am Shop herangezogen werden.

Die zweite Frage die sich mir stellt, ist ob ich meine Synchronisation von beiden Shops, speziell was die FTP-Daten bzw. Shop-Daten angeht weiterhin betreiben kann oder ob es da zu Konflikten mit Git Versionsverwaltung kommen kann. Aktuell werden die Daten per rync synchronisiert.

Im Endeffekt geht darum ob es unter diesen Bedingungen Sinn macht auf Git zu setzen

Besten Dank im Voraus.
 
Kurz und knapp: Versionsverwaltung ist immer Sinnvoll

In deinem Fall waere so eine herangehensweise denke ich passend: https://www.digitalocean.com/commun...t-up-automatic-deployment-with-git-with-a-vps

Das Git Repository wird auf beiden Server angelegt und nach jedem git push wird ein Hook ausgefuehrt der den Code aktualisiert. Mit rsync kannst du dann weiterhin Produktbilder usw. welche nicht im Git Repository aufgenommen werden auf dem aktuellen Stand halten. Alle Daten die vom Shopsystem erstellt werden sollten vom Git Repository mittels .gitignore ausgeschlossen werden, somit kommt es auch nicht zu Konflikten.

Aenderungen werden dann nur noch durch git push per ssh auf beide Server geschoben.
Der Hook kann dann auch jedesmal composer install ausfuehren damit die Abhaengigkeiten aktualisiert werden.


Edit:
Als schlankere Alternative zu dem von @Prinzenrolle_ erwaehnten GitLab wuerde ich noch https://gitea.io/ empfehlen
 
Zuletzt bearbeitet: (gitea erwaehnt)
  • Gefällt mir
Reaktionen: new Account(), Gajel und Hallo32
git ist eigentlich immer sinnvoll auch für dich..

der vendor ordner sollte aber trotzdem nicht in git.. entweder sollte dein buildserver (bamboo oder ähnliches) composer install ausführen oder du manuell auf dem server

btw.. entwicklung in 2018 ohne versionskontrolle ist schon irgendwie falsch..
 
  • Gefällt mir
Reaktionen: Gajel
Mit deiner Aufzählung hast du deine Antwort eigentlich schon selber beantwortet. Wenn du aber wirklich absoluter Neuling bist und auch der einzige bist und das System ziemlich wichtig ist, wäre externe Hilfe evtl. eine Überlegung wert. GitLab wäre ansonst eine OpenSource Version, welche in der Community Edition eigentlich alles bietet was das Herz begehrt.
- Pipelines
- Tickets
- Milestones
- ToDo's
- WiKi
- WebHooks
- Kommentarfunktionen und und und
 
Ok. Das sind 3 eindeutige Meinungen, die ich mehr oder weniger erwartet habe.

Was die ganze Git-Thematik angeht, bin ich in der tat absoluter Neuling aber ich habe ein gutes Verständnis für solche Sachen und in der Regel ist das Einarbeiten nur ein Frage der Zeit plus "trial and error", obwohl das Git-Thema im ersten Moment doch sehr "komplex" auf mich wirkt. Aber so ist das halt mit neuen Sachen ...

Natürlich ist hier externe Unterstützung nicht ausgeschlossen. Denn bevor so ein System live geht muss ich wissen das alles zu 100% stimmt. Alles andere wäre fatal und extrem fahrlässig denn an diesem Shop hängen einige Arbeitsplätze.

Im Moment tue ich mich einfach noch mit den Begriffen schwer (Repository, Master-Branch, Pull-Request usw.).

Am Server-Setup würde sich also nicht viel ändern wenn ich das richtig verstehe. Ein lokaler Dev-Server plus 2 Live-Server, einer davon als Backup-Server.

Und ich kann Git so einrichten das beide Live-Server mit einem "git push" mit den neuen Änderungen gefüttert werden, ja?! Wären in diesem Fall beide Server ein Master-Branch oder kann es immer nur einen Master-Branch geben?

Also Githoster fand ich jetzt bitbucket ganz ansprechend.

Auf jeden Fall schon mal Danke für den ganzen informativen Input!
 
Zuletzt bearbeitet:
würde auch eher bitbucket nutzen.. ist um einiges übersichtlicher und performanter als gitlab..
 
  • Gefällt mir
Reaktionen: r15ch13 und Prinzenrolle_
BitBucket ist in der Tat besser. Nur musst du wissen, dass du dich da in den Schlund von Atlassian wirfst. Wenn ich bei meinem Arbeitgeber nochmals entscheiden könnte, würde ich diesen Schritt nicht nochmals machen. Sofern du unter 10 Lizenz bleibst, nimm BitBucket. Dann kannst du auch mit Confluence z.B. ein echt tolles System zusammenbauen. Auch Jira wird da dann schon schnell mal sehr gut. Kannst du noch z.B. einen Jenkins Server aufbauen, dann läuft das schon ziemlich schnell, sehr gut. Aber, wenn du z.B. weisst, dass du in den nächsten Jahren wesentlich mehr, als 10 Lizenz brauchen wirst, überlege dir das ganz genau, ob die Kosten von BitBucket den Nutzen Wert ist. Ich finde es nicht. Bei Atlassian zahlst du einfach für jeden Quark monatlich.

Wir haben noch ein kleines Startup und setzen da GitLab ein (Community Edition). Läuft in einem Docker Container und ich finde den Speed wirklich gut. Klar, Rails ist eigentlich veraltet, dafür finde ich den Update Prozess bei GitLab 100 mal besser wie bei allen Atlassian Produkten. Du musst dir einfach wirklich bewusst sein, die Atlassian Produkte können echt schweine teuer werden. Deshalb, mach eine genaue Analyse (evtl. externe Beratung)
 
  • Gefällt mir
Reaktionen: Tumbleweed, Darrel und Gajel
Danke für den Hinweis mit Atlassian. Werde mir das auf jeden Fall nochmal genauer anschauen.
 
Zurück
Oben