-
Notifications
You must be signed in to change notification settings - Fork 0
Git workflow
Kamil Żmijowski edited this page Jul 10, 2024
·
1 revision
- main lub master: Gałąź zawierająca stabilny kod gotowy do produkcji.
-
dev: Gałąź główna rozwoju, gdzie łączy się wszystkie zmiany przed przeniesieniem ich na
main
.
- Tworzone z
develop
. - Nazwa:
feature/<nazwa-funkcjonalności>
. - Przykład:
feature/login-system
.
- Tworzone z
develop
lubmain
. - Nazwa:
bugfix/<nazwa-poprawy>
. - Przykład:
bugfix/fix-login-bug
.
- Tworzone z
develop
. - Nazwa:
release/<wersja>
. - Przykład:
release/1.0.0
.
- Tworzone z
main
w przypadku pilnej naprawy błędu na produkcji. - Nazwa:
hotfix/<nazwa-poprawy>
. - Przykład:
hotfix/urgent-fix
.
- Przejdź na gałąź
develop
:git checkout develop git pull
- Utwórz nową gałąź funkcjonalności:
git checkout -b feature/<nazwa-funkcjonalności>
- Pracuj nad funkcjonalnością, wykonuj commity i push:
git add . git commit -m "Dodaj nową funkcjonalność" git push origin feature/<nazwa-funkcjonalności>
- Otwórz pull request do
develop
.
- Regularnie aktualizuj swoją gałąź funkcjonalności:
git fetch git merge develop
- Utwórz gałąź
release
zdevelop
:git checkout develop git pull git checkout -b release/<wersja>
- Dokonaj ostatecznych testów i poprawek.
- Scal gałąź
release
domain
idevelop
:git checkout main git merge release/<wersja> git tag -a v<wersja> -m "Wydanie <wersja>" git push origin main --tags git checkout develop git merge release/<wersja>
- Utwórz gałąź
bugfix
zdevelop
lubhotfix
zmain
:git checkout develop git pull git checkout -b bugfix/<nazwa-poprawy>
- Pracuj nad poprawą, wykonuj commity i push.
- Otwórz pull request do
develop
lubmain
.
- Zmiany w
main
gotowe do wdrożenia na produkcję.
- Continuous Integration (CI): Używaj narzędzi CI (np. GitHub Actions, GitLab CI) do automatycznego testowania kodu przy każdym pushu i pull request.
- Code Review: Przeprowadzaj przeglądy kodu dla każdego pull request.
- Lintery i Testy: Używaj linterów (np. ESLint dla Vue.js, PHP_CodeSniffer dla Laravel) oraz testów jednostkowych i integracyjnych.
git checkout develop
git checkout -b feature/new-feature
# Praca nad funkcją
git add .
git commit -m "Add new feature"
git push origin feature/new-feature
# Otworzenie pull request do develop