Wpis z mikrobloga

Jak szczegółowe zmiany powinno się zawierać w #git, aby to miało sens?

Każda nawet drobna poprawka to osobny commit, czy kilka drobnych zmian zbijać w sumaryczny commit?

Wydaje mi się, że najrozsądniej jak najmniejsze porcje commitować, łatwiej potem będzie ewentualnie coś ogarnąć?

Mirki z #programowanie, jakies hinty?
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@anonim1133: IMHO do kilku commitów w przeciągu godziny, jakaś nowa funkcja, elementy interfejsu itp. Czyli stosunkowo wysoka częstotliwość, tak też mi mówiono.

Oczywiście bez przesady w drugą stronę, nie będziemy commitować w końcu pojedynczych linii (chyba że ultraważne typu referencje do jakichś serwerów).
  • Odpowiedz
@anonim1133: jeden commit = jeden temat. Nawet jeżeli zmieniłeś tylko jeden znak, to jest to samodzielna zmiana. Dajesz tytuł "Fixes XXX" i wiadomo skąd ta zmiana znaku i w drugą stronę - wiadomo co zostało zrobione, żeby naprawić XXX.

Jak piszesz większy feature, to robisz brancha i commitujesz w nim kolejne kroki ("Creates controller Y", "Implements method Z", "Refactors library W", oczywiście z trochę dokładniejszym opisem :P)
  • Odpowiedz
To zalezy, pojedyncze zmiany typu bugfixy, drobne korekty, commituje osobno. W ten sposob latwo jest cos dodawac do innych branchy(cherry-pick), oraz latwo revertowac zmiany. Jezeli chodzi o nowe featury to zawsze rozwijam na osobnej branchy, a potem merguje, ewentualnie rebase przed mergem a potem i tak non-fast-forward merge tylko po to, zeby miec merge commit, ktorego w razie jakichs zmian decyzji odnosnie funkcjonalnosci, tez latwo jest sie pozbyc.
  • Odpowiedz
@ciepol: akurat w tym jednym wypadku można się go posłuchać ;P

@anonim1133: staraj się po prostu trzymać porządek w tych commitach. Wrzucanie kilkunastu małych fixów do jednego commita sprawia, że potem nie wiesz nawet co napisać w treści i powstają potworki typu "Lots of changes" albo "Various bugfixes".
  • Odpowiedz
sprawia, że potem nie wiesz nawet co napisać w treści i powstają potworki typu "Lots of changes" albo "Various bugfixes".


@m_bielawski: Prawda!

Jednocześnie trochę głupio mi było dodawać commit jak wystarczyło gdzieś poprawić jedną linijkę, którą wcześniej przeoczyłem ;f
  • Odpowiedz
@anonim1133: poczytaj sobie o gerricie - system, ktory wiaze kazda zmiane razem z code review w ten sposob masz jednoczesnie w logu informacje o review i ewentualnie w gericie powiazanie do ticketa.
  • Odpowiedz
@anonim1133: Na branchu rozwojowym wiele commitów, a następnie przy mergu do głównego brancha

git merge future_branch --squash; git commit -am
oraz zasada pisania komentarzy:

task-id krótki opis do
  • Odpowiedz