Sobes.tech
Junior

Kas yra Git Flow?

sobes.tech AI

Atsakymas iš AI

Git Flow yra šakų modelis Git, pasiūlytas Vincent Driessen. Jis nustato griežtą taisyklių rinkinį, kaip organizuoti šakas ir valdyti projekto gyvavimo ciklą.

Pagrindinės šakos:

  • master: Turinti paruoštą leidimui kodą, visada stabilus.
  • develop: Pagrindinė šaka naujų funkcijų kūrimui.

Pagalbinės šakos:

  • feature/...: Skirtos kurti specifines funkcijas. Atskiriamos nuo develop ir sujungiamos atgal į develop. Yra asinchroninės viena nuo kitos.
  • release/...: Paruošti naują leidimą. Atskiriamos nuo develop, sujungiamos su develop ir master. Pataiso klaidas, susijusias su leidimu.
  • hotfix/...: Greitai pataisyti kritines klaidas gamybos aplinkoje. Atskiriamos nuo master ir sujungiamos su develop ir master.

Funkcijos šakos gyvavimo ciklas:

  1. git checkout develop
    
  2. git pull
    
  3. git checkout -b feature/nauja-funkcija
    
  4. Kūrimas ir įsipareigojimai.
  5. git checkout develop
    
  6. git pull
    
  7. git merge feature/nauja-funkcija
    
  8. git branch -d feature/nauja-funkcija
    

Privalumai:

  • Aiški struktūra ir organizacija.
  • Sumažina konfliktus sujungimo metu.
  • Lengva suprasti naujiems komandos nariams.

Trūkumai:

  • Gali būti per sudėtinga mažiems projektams ar komandoms.
  • Reikalauja griežto taisyklių laikymosi.