Jesteśmy firmą zajmującą się oprogramowaniem internetowym, która obecniema 2 programistów i nie ma systemu kontroli wersji. Zdecydowaliśmy się rozpocząć korzystanie z GIT i szukamy porady dotyczącej implantacji. Mamy dość złożoną konfigurację, która sprawia, że jest to trudne.
Pozwólcie, że przedstawię sytuację:
- Mamy dwóch programistów, którzy będą musieli pracować nad tymi samymi plikami w tym samym czasie (w przyszłości zostanie rozszerzony na kolejnych programistów)
- Nasza konfiguracja wieloserwerowa na AWS sprawia, że konfigurowanie lokalnych środowisk do testowania jest niezwykle trudne / niemożliwe. Dlatego nasza osobista „piaskownica” nie będzie znajdować się na naszych lokalnych maszynach, ale na naszych serwerach.
- Nasza aplikacja jest zbudowana z 7 katalogów w katalogu głównym, a każdy katalog ma własną subdomenę (na jednej mamy CDN, na innych podaplikacje i wszystkie one współpracują ze sobą, tworząc naszą reklamowaną aplikację)
- Musimy mieć możliwość budowania i testowania kodu oraz scalania go ze środowiskiem „programistycznym”, które możemy przygotowywać i testować, a po zatwierdzeniu przekazać go do produkcji. Oczywiście używanie GIT do śledzenia zmian.
Jesteśmy nowicjuszami w GIT i chcielibyśmy uzyskać poradę lubzalecenia dotyczące konfiguracji. Ponownie, szukanie zaleceń wysokiego poziomu, takich jak „Zbuduj to repozytorium / gałąź / katalog”, a nie żadnych konkretnych przykładów kodu w tym momencie, chyba że jest to super istotne.
Jak zorganizowałbyś to środowisko GIT, biorąc pod uwagę te ograniczenia, w szczególności programiści, którzy nie mogą używać hosta lokalnego do testowania?
Odpowiedzi:
1 dla odpowiedzi № 1Nie znając dokładnych szczegółów, mogę tylko zasugerować ogólny pomysł, ale myślę, że i tak tego chcesz.
Jeśli jesteś nowy w git, powinieneś poszukać w Google „przykładów przepływu pracy git”. Jest wiele dobrych.
To dobre miejsce na rozpoczęcie: https://www.atlassian.com/git/tutorials/comparing-workflows/
Nie jestem pewien, czy w pełni rozumiem twoją sytuację pod względem testowania, ale jeśli każdy z was wymaga własnych gałęzi testowych, można skonfigurować serwery dla oddziałów takich jak person1-sandbox
i person2-sandbox
gdzie możesz każdy test osobno, a następnie scalić go w plik develop
gałąź. Od develop
możesz ponownie przetestować, a następnie przejść do produkcji.
Mam nadzieję, że to pomoże. Jeśli masz pytania, proszę o komentarz, a ja spróbuję ci pomóc.
1 dla odpowiedzi nr 2
Tak, Twój zespół może używać git do kontroli wersji. W Twojej sytuacji:
- Git umożliwia pracę na tym samym pliku przez członków Twojego zespołu i bez ograniczeń
- Tak, jako środowisko programistyczne nie jest konieczne umieszczanie osobistej „piaskownicy” na komputerach lokalnych. Możesz umieścić ją na serwerze, jak chcesz, odsyłając dostać git na serwer
- 7 katalogów bez problemów podczas korzystania z git.Jeśli wszystkie aplikacje podrzędne muszą ze sobą współpracować, należy przeprowadzić kontrolę wersji jako całość (w tej samej gałęzi). A jeśli zaktualizujesz jedną z aplikacji podrzędnych, cały projekt będzie miał nową wersję
- Używanie git nie wpłynie na kompilację i testowanie projektów