In einem meiner Universitätsprojekte bin ich in einer Gruppe von 4 Entwicklern mit der Entwicklung einer Webanwendung von Grund auf beauftragt. Wir alle haben ein sehr grundlegendes Verständnis von Git und entschieden uns dafür, es für die Code-Base-Collaboration einzusetzen, wir haben ein Repo-Setup und jeder ist ein Mitarbeiter von GitHub.Mit Git für die Zusammenarbeit an einem 4-Personen-Projekt
In den letzten paar Monaten haben wir einfach geklont und an den Master-Zweig übergeben, und das hat gut funktioniert. In letzter Zeit gab es jedoch Zeiten, in denen zwei oder mehr Leute gleichzeitig an der Code-Basis arbeiten und wir oft mit einigen Leuten hinter uns stehen, die hinter den Commits stecken und das Repo klonen müssen, bevor sie begehen, was manchmal in ihren Änderungen endet hat verloren.
Heute sprach einer der Gruppenmitglieder davon, einen "Entwicklungszweig" zu haben, den wir alle klonen und an dem wir uns festmachen, und dann am Ende jedes Sprints in den Master-Zweig übergehen. Wir haben das versucht, aber wir haben keine Verbesserung gesehen, da wir immer noch mit der gleichen Code-Basis arbeiten, so dass das gleiche Problem wie zuvor auftritt.
Jemand anderes hatte die Idee, das Hauptrepo zu forkieren (das ist etwas neues für mich), daran zu arbeiten und dann Pull-Requests an das Hauptrepo zu senden, was dann zusammengeführt werden kann. Das klingt in der Praxis gut Planen Sie, denn die Änderungen können überprüft und behoben werden, wenn der Code beschädigt wird. So verstehe ich es jedenfalls.
Aber wie gesagt, wir sind alle ziemlich neu bei Git und haben ein sehr grundlegendes Verständnis für die ganze Idee. Wie organisiert man normalerweise ein Team von 4 Entwicklern, die an einem Git Repo arbeiten? Ich habe mir einige Git-Dokumentationen angeschaut, aber es ist alles ziemlich verwirrend für jemanden, der nur wirklich weiß, wie man einen Master-Zweig klont und festlegt.
Vielen Dank für jede Hilfe!
Sie schreiben „den Repo-Klon vor commiting, die bis manchmal endet in ihre Änderungen verloren“. Wie können irgendwelche Änderungen verloren gehen? Sind Sie sicher, ziehen Sie Änderungen aus dem Master-Zweig? Wenn Sie dies tun, dürfen Sie keine Daten verlieren. Parallele Änderungen an gleichen Dateien würden automatisch von git zusammengeführt. Alternativ würden Sie nur einen Konflikt bekommen. – harpun
merke ich, wie dumm meine Art und Weise war jetzt zu denken, aber es war mein Verständnis, dass, wenn zwei Menschen auf der gleichen Datei arbeiten, und beide Menschen begehen, derjenige, der die Änderungen der Person begangen wurde, bevor sie begehen letzte überschreibt. Ich denke, wir haben jedoch einige Konfliktfehler bekommen, die uns ein wenig die Wand hochgetrieben haben. –
Versuchen http://try.github.com/levels/1/challenges/1 und http://atlassian.com/git/tutorial/git-basics für gute git Tutorials. Mit der [zentralisiert Workflow] (http://atlassian.com/git/workflows#!workflow-centralized) sollten für den Anfang ausreichen. Keine Notwendigkeit, die Dinge verkomplizieren :) – harpun