Skip to main content

GIT - система розробки кода

https://www.atlassian.com/git/tutorials/source-code-management - один з кращих туторіалів ~30хв

Технології

  • Gitlab - проиватний git Server проекти + cicd/pipeline + docker registry - https://git.softpro.ua
  • Git - клієнт і технологія розробки
  • GitHub - git server публічних проектів

Робота з git

  1. Console https://about.gitlab.com/images/press/git-cheat-sheet.pdf
  2. Visual Studio Code https://www.digitalocean.com/community/tutorials/how-to-use-git-integration-in-visual-studio-code
  3. Git Lense https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens

Основні поняття

  • Git WorkFlow - робочий процес git
  • Branch - гілка, інструмент забезпечення робочого процесу
  • Merge Request - перенесення коду з одної гілки в іншу
  • Commit - перенесення локальних змін в гілку
  • Hash - унікальний код коміту
  • Tag - версія коду визначається main/master
  • Pipeline - процес автоматичного запуску команд git server ом після змін в git репозиторії
  • Code Review - аналіз коду

Git WorkFlows

Основні варіанти розробки

  • Centralized Workflow - dev,main, test -
  • Feature Branch Workflow - розподіл по блокам або користувачам
  • Gitflow Workflow - функція, фікси, задачі - окрема гілка
  • Forking Workflow* - для розподіленої роозробки в OpenSource проектах

Може бути гібридний підхід, мікс, залежить від складності проекту

GitFlow

regular branch:

  • dev
  • main/master
  • test

temp branch:

  • Jira Task Key - Softpro-1455 - Назва повторює ключ задачі
  • reason__details--tag - feat__group_access_table фомрула назви гілки,

  • Fix / Hot-fix / Patch - fix_ - фікс багів
  • Feature Branches - feat_ - нові функції
  • Refactor / Delete - refactor_ - оптимізація, вилучення коду

Base Rules

  • Starting branch name with a category word. ...
  • Using unique issue tracker IDs in branch names. ...
  • Using hyphen or slash separators. ...
  • Using author name in Git branch. ...
  • Avoid using just numerals. ...
  • Avoid simultaneous naming convention. ...
  • Avoid long names.

Розробка на локлаьному компьютері

  • скачуємо проект гілка dev
  • налаштовуємо конфіг файл
  • npm i - встановлення необхідних пакетів
  • npm start - запуск сервера
  • в разі потреби створюємо окрему гілку
  • оновлюємо тести
  • оновлюємо документацію route.yml - API
  • оновлюємо документацію jsdoc - code
  • оновлюємо документацію storybook - VUE
  • пушимо зміни

Code Review

https://kinsta.com/blog/code-review-tools/ - 12 Best Code Review Tools

Корисні посилання