Wpis z mikrobloga

Potrzebuję małego wyjaśnienia odnośnie #git Załóżmy, że jestem na świeżym branchu, git checkout -b feature-some-task-1, tutaj sobie robię kilka commitów, #!$%@? to na serwer i robię pr'kę z tego brancha na develop'a. Później biorę inne zadanie i znowu robię git checkout -b feature-some-task-2 i tak samo, kilka commitów, push i pr'ka. Pytanie jest, dlaczego przy tej drugiej pr'ce mam też commity z tego poprzedniego branch'a feature-some-task-1, co robię źle? Czy mogę to po tych czynnościach naprawić?
#programowanie
  • 16
@karololo: w sumie już wszystko wiem, nie wiem czy to najlepsza droga, ale wydaje się rozsądna, wbijam na developa, usuwam lokalny branch feature, robię checkout -b na branch, który przed chwilą usunąłem, robię pulla z serwera, usuwam brancha z serwera i #!$%@? na serwer
@karololo: Nie, rebase w tym przypadku nie pomoże (dalej będziesz miał te commity z feature-some-task-1), zrób tak:
- otwórz nowy branch z głównego brancha (developa, master, czy co tam masz)
- użyj cherrypicka do wybrania commitów z feature-some-task-2 które chcesz "nałożyć" na nowy branch
Jeśli nie ma żadnych konfliktów to powinno zadziałać. btw: jeśli używasz macos albo windowsa to polecam SourceTree do pracy z gitem - pozwala sobie lepiej zwizualizować co