Portál AbcLinuxu, 5. května 2025 18:38

Dotaz: Ako správne používať stable branch v git-e?

6.9.2020 13:29 rastos | skóre: 63 | blog: rastos
Ako správne používať stable branch v git-e?
Přečteno: 365×
Odpovědět | Admin

Zistil som, že vlastne neviem používať git tak, ako by som potreboval :-( Chcem vyrobiť branch a do toho branch-u pridávať len bugfixy zatiaľ čo do master vetvy pôjdu aj bugfixy aj nové feature.

Graficky by to vyzeralo nejako takto:
       B1<-B2<-B3                      B3<-B4
      /                               /
...<-R1<-F1<-F2<-B1<-F3<-B2<-F4<-F5<-R2<-F6<-B3<-B4<-F7...
S tým, že:
- R1, R2 sú momenty, kedy bol urobený release nejakej verzie. Túto verziu dostane zákazník, a ďalej bude dostávať len bugfixy až kým nedostane novší release
- B1, B2, ... B4 sú bugfixy, ktoré majú v branch-i/branch-och aj v master
- F1, F2, ... F7 sú nové feature, ktoré sú commitnuté len v master branchi.

Nie je správne urobiť merge, pretože tým by sa mi do branch-u dostali aj feature, ktoré som commitol do master. To isté rebase.
Robiť cherrypick, mi nepríde vhodné, pretože jeden bugfix môže pozostávať z viacerých commitov, ktoré možno ani nemusia ísť po sebe.

Tak ako to vlastne robiť správne?

Nástroje: Začni sledovat (3) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

6.9.2020 14:48 Bherzet | skóre: 19 | blog: Bherzetův blog
Rozbalit Rozbalit vše Re: Ako správne používať stable branch v git-e?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Bugfix stejného problému může v různých verzích vypadat jinak, takže to žádné hezké řešení nemá. Prostě mít větev pro master a pak pro každou verzi. Bugfixy se dělají v masteru a cherry-pickují do jednotlivých verzí (samozřejmě to musíš pokaždé znovu otestovat a případně upravit). Na větší bugfixy bych si radši dělal samostatnou větev a pak z ní udělal buď jeden commit, nebo jí mergnul.
xkucf03 avatar 6.9.2020 17:00 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Verzovací systémy a větve
Odpovědět | | Sbalit | Link | Blokovat | Admin

On asi neexistuje jediný „správný“ systém. Když budeš hledat „git workflow“, tak najdeš řadu různých způsobů – každý to dělá trochu jinak.

Já tedy používám primárně Mercurial a následující systém:

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.