Przepływ pracy Gitlab, wymuszanie przeglądu kodu lub żądanie scalenia w oddziale

18

Pracuję nad wdrożeniem Gitlab w mojej firmie ze strategią przepływu pracy. Moim pomysłem jest to, że programiści uzyskają dostęp do repozytoriów, ale za każdym razem, gdy spróbują zatwierdzić, ich kod musi zostać sprawdzony.

Wiem, że mogę zlecić im utworzenie oddziału przed zatwierdzeniem, a następnie utworzenie żądania scalenia po przekazaniu go do repozytorium. Nadal jestem niejasny co do pewnych rzeczy ... Pomysł, że polegamy na ludziach, aby utworzyć oddział, a następnie żądanie scalenia wydaje się wadliwe, istnieje rozwiązanie, które wymusza jakąś zasadę, że gałąź główna może pozostać czysta, chyba że „ admin ”zatwierdza kod, który ma się z nim połączyć. Przeczytałem „workflow zespołu github”, ale wydaje się, że nie oferuje realnego rozwiązania. Doceniamy wszelkie porady dotyczące procesu lub własnej najlepszej praktyki. Dzięki!

Mikrofon
źródło
1
"The idea that we rely on people to create a branch and then a merge request seems faulty"Wydaje mi się, że masz większy problem niż brak funkcji w systemie kontroli wersji. Jeśli chodzi tylko o poświęcenie dodatkowego czasu na utworzenie oddziału, spójrz na Atlassian Stash i jego integrację z Jira.
toniedzwiedz
5
Dzięki Tomie, moim pomysłem jest egzekwowanie standardowych zasad, eliminuję miejsce na błąd
Mike
2
Zastanów się nad tym wpisem na blogu od gitlabhq about.gitlab.com/2014/09/29/gitlab-flow
spuder
1
Proszę obejrzeć to: Google I / O 2009 - The Myth of the Genius Programmer
borisdiakur
Możesz kazać im używać własnych widelców ...
Wildcard

Odpowiedzi:

14

Rozpocząłem pracę z gitlab, czytanie sekcji POMOC zapewnia układ przepływu pracy. W tym momencie wydaje się to najlepsze rozwiązanie mojego pytania. Jeśli ktoś ma doświadczenie w tym przepływie pracy lub porady, dodaj wszelkie dodatkowe informacje.

Z sekcji POMOC:

Przepływ pracy

  1. Klonuj projekt
    git clone [email protected]:project-name.git
  2. Utwórz oddział za pomocą swojej funkcji
    git checkout -b $feature_name
  3. Napisz kod. Zatwierdź zmiany
    git commit -am "My feature is ready"
  4. Przekaż swój oddział do GitLab
    git push origin $feature_name
  5. Sprawdź swój kod na stronie zatwierdzeń
  6. Utwórz żądanie scalenia
  7. Kierownik zespołu sprawdzi kod i połączy go z głównym oddziałem

W sekcji commits repozytorium faktycznie możesz chronić gałęzie, które zmuszają deweloperów do wykonania powyższego procesu, tworzenia gałęzi i przesyłania żądania scalenia.

Zrzut ekranu - Ochrona oddziału

Mikrofon
źródło
2
Czy jest jakiś sposób na wymuszenie tego przepływu pracy (np. Za pomocą chronionego oddziału), ale zezwolenie dowolnemu cesjonariuszowi (nie tylko liderowi zespołu z uprawnieniami administratora / administratora) na scalenie żądania?
Adam
Właśnie próbowałem przypisać żądanie scalenia komuś bez uprawnień administratora, a on otrzymuje następujący komunikat w żądaniu scalenia. Nie można go scalić automatycznie, nawet jeśli można go scalić, nie masz na to pozwolenia. Nie wydaje się, że byliby w stanie.
Mike
Dzięki. Spróbuję albo Komisji Egzaminacyjnej, Phabricator, albo Gerrit. Czy masz jakieś doświadczenie z którymś z nich?
Adam
Nie, przepraszam, że nie próbowałem żadnej z tych usług. Opublikuj odpowiedź, jeśli ci się powiedzie.
Mike
Jasne, chyba że zapomnę. BTW, dodałem Barkeep do mojej listy kontrolnej :)
Adam