2016-09-13 1 views
0

Ich habe vor einiger Zeit mit Git begonnen. Am Anfang habe ich versucht, mit meinem lokalen env unter Windows zu arbeiten, und ich würde die Änderungen auf den dev-Server pushen, wenn es fertig ist. Aber ich stieß auf Probleme - der Hauptgrund war, dass unsere lokalen Maschinen so langsam waren, dass die Tests die Entwicklung verlangsamten. Um die Website nach Änderungen und Aktualisierungen anzuzeigen, benötigte die Seite mehr als 20 Sekunden!Git als Team - Subdomains oder lokale Envs?

Also ging ich weiter und erstellte Sub-Domains für jeden Entwickler. Dort war dev.mysite.com bereits auf dem Server. Ich fügte jer.mysite.com für mich, dan.mysite.com für einen anderen Entwickler, ext.mysite.com für externe Dienste hinzu, die mit uns arbeiten, und so weiter ... Dann klonte dev.mysite.com in jedem von denen. Das funktioniert gut. Jeder hat seine eigene Umgebung direkt auf dem Server.

Worüber ich nicht sehr zufrieden bin, ist das Konzept. So zu arbeiten könnte ein echtes Problem sein, wenn Ihr Team 20, 30 Entwickler umfasst. Außerdem gibt es bei der Entwicklung von Devs Probleme, dass sie keine richtige GUI haben (Vimdiff ist wirklich schwer, wenn Sie es nicht gewohnt sind).

Also, was würden Sie empfehlen?

Vielen Dank!

+1

Warum dauerte es mehr als 20s, um die Website lokal anzuzeigen? Sind bessere Maschinen keine Option, oder ist das Problem darüber hinaus? Welchen Web-Server benutzen Sie, um die Antworten besser zu verstehen? Können Entwickler nicht auf ihren eigenen Maschinen zusammenfassen und dann zu Git drängen, bevor sie in ihr Testfeld ziehen? – gabe3886

+1

Ihr Ansatz funktioniert gut, sobald Sie es automatisieren: Richten Sie Ihren DNS-Server mit einer Platzhalterdomäne ein, den Webserver aus der Subdomäne im Host-Header und einen serverseitigen Git-Hook zum Auschecken in ein entsprechend benanntes Verzeichnis (abgeleitet vom Zweignamen). Dies kann leicht erweitert werden, um auch zu verlangen, dass wir Zertifikate im laufenden Betrieb verschlüsseln. – Phillip

+0

@ gabe3886 Wir benutzen easyphp und alles funktioniert super ... Die Codebase ist einfach schlecht und die Maschinen sind wirklich langsam und alt (nicht wirklich für Devs gemacht). Was du am Ende deines Kommentars vorschlägst, wenn ich Recht habe, ist Dev-Änderungen auf ihrem lokalen Computer zu ziehen, mit ihrem Code zu verschmelzen, den zusammengeführten Code in ihre eigene Sub-Domain zu schieben, zu testen und dann einen Push an den Entwickler zu übergeben? –

Antwort

2

Die beste Option wäre, eine anständige Dev-Umgebung für Ihre Teammitglieder zu haben und sie mit Git lokal arbeiten zu lassen.

Das Geld, das Sie sparen, wenn Sie ihre Maschinen nicht aktualisieren, wird wahrscheinlich viel weniger sein, als Ihr Team für den Umgang mit einer entfernten Entwicklungsumgebung zu bezahlen.

+0

Ich werde das dem Chef vorschlagen :) –

Verwandte Themen