Wpis z mikrobloga

#naukaprogramowania #git #gerrit

Znam podstawy Gita, ale mam problem z Gerritem.

1. Zrobiłem sobie clone repozytorium (to polecenie co się kopiuje z msg-hook).
2. Wprowadziłem zmiany, dodałem pliki.
3. Zrobiłem commita (git commit -m "msg")
4. Wypushowałem do Gerrita (git push origin HEAD:refs/for/master)
5. Zanim mój commit przeszedł review, to w tym czasie inni zrobili commity i review im przeszło.
6. Chcę poprawić swój commit (bo załóżmy, że na review został cofnięty).
7. Co mam zrobić?

Normalnie to bym wprowadził zmiany i zrobił git commit --amend. Ale teraz nie mogę, bo pewnie będzie konflikt.

Jak pobrać zmiany z serwera do siebie? git fetch czy git pull czy git rebase coś tam? Jak sobie poedytuję pliki (rozwiążę konflikty), to co mam dalej zrobić? Normalnie git commit --amend? Czy jeszcze jakieś polecenie?

I jak to potem będzie w Gerricie? Będzie widać, że rozwiązywałem konflikt (będą tak jakby dwa commity) czy normalnie będzie cały czas ten sam (tylko nowe zmiany)?


  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mk321: a nie powinienes zrobic checkout na ten swoj commit i po prostu kontynuowac swoja prace (na osobnym branchu)? jak skonczysz to co masz zrobic to wysylasz kolejnego PR i osoba ktora robi review ma sie martwic o merge i merge conflicty

Ja tak robie na czystym Git'cie
  • Odpowiedz
@mk321:

Z tego co słyszałem, to ja mam się martwić mergem


dziwne, moze masz zmergowac swoj branch z masterem najpierw?

zapytaj lepiej, bo cos tutaj nie gra
  • Odpowiedz
@Melcma: tak, używamy --amend i w tej chwili pracujemy na masterze (taki moment - miało nie być dużo commitów; potem dopiero mamy używać branch).

Jakby było na branchu i ktoś robiłby review, to rozumiem, że on by potem mergował do mastera. Ale jak tu jest na masterze, to może rzeczywiście nie da się wrzucić zmian z konfliktami.

@plushy: @Melcma: mam sobie pobrać zmiany, zmergować i zrobić commita
  • Odpowiedz